Что вы подразумеваете под "взломом"? Вы должны быть более конкретными в отношении того, что вы делаете и что идет не так.
Если вы используете парсер SAX, обратите внимание, что SAX может разбивать текстовые узлы на куски и доставлять куски по одному за раз. Он может разбить узлы где угодно, но SAX-парсеры нередко разбивают их на символы, значимые для синтаксического анализатора, такие как '&'.
Я сейчас посмотрел на ваше сообщение о пастбине (трудно читается желтым на белом ...). Я не знаком с инструментами, которые вы используете, но они, кажется, сильно сломаны. На самом деле он не распознает раздел CDATA, он сериализует его как "<![CDATA["
, что явно неправильно. Если он не распознает CDATA, то он, вероятно, будет рассматривать амперсанд как начало ссылки на сущность, поэтому после этого все ставки отключены.