Unfortunately, almost all XML parsers automatically resolve character references, thus the character reference in your string (§) is being resolved to the real underlying Unicode character.
I've looked at the underlying implementation of XPP3, the Oracle Java DOM Parser, Stax Parser, and the SAX Parser. All of them automatically resolve character references, with no option to disable that (you can get the SAX Parser to not resolve character references in attributes, but not in the text of an element, and only through some nasty trickery)
So, other than writing your own XML Parser, you've probably only got two choices:
1) let the parsers / XStream resolve the character, and then 're-encode' any special characters in your object
2) pre-process the XML stream before it's parsed and either escape the & character (ie. if you replaced it with § then it would work properly).