The release notes for Java 6 Update 14 say they include a fix for this bug. So have you actually encountered this bug yourself, or are you just spreading rumours? The "workaround", if you can even call it that, is to install the current version of Java.
The server machine we're seeing this error has Java 6 update 21 on it, and unfortunately it's still occurring at about the same point even if we adjust the heap size so that it should theoretically be able to contain the 40GB file we're reading.
That's interesting. Of course you shouldn't get out-of-memory exceptions from a SAX parser under any circumstances (unless it's your code using up the memory)... but have you tried the same code with Java 5? From what I see, that didn't have the problem.