Das sieht eher so aus, als müsste man in XML::Parser oder gar in Expat einen Bug fixen. Natürlich könnte man versuchen, das Problem irgendwie reproduzierbar zu triggern und Bugreports schreiben...
When C++ is your hammer, every problem looks like your thumb.