I never said my code contained $XML::Simple::PREFERRED_PARSER = 'XML::Parser';
I realise it wasn't there explicitly, but by virtue of not setting it explicitly and having XML::Parser installed, it's as if you had.
Can't locate object method "new" via package "XML::SAX
Hum, weird. Did you also install XML-LibXML to provide XML::LibXML::SAX? It would be a bad failure mode if not having XML::LibXML::SAX is the cause of that error, but you never know.
( I see from your update that this was indeed the problem )