Mass mailings and German law conformity – provide do-not-track for civimail (opt-out from track open)
I don't think there is a way to achieve "pseudonymization" without having to touch code (except for turning off tracking altogether). However, implementing what you suggested, i.e. assigning the tracking events to a predefined contact ("Anonymous") one way or another, should be reasonably easy for a developer.

Adding on do-not-track flag is a different story though, that entails a lot of little changes throughout the system. It also raises questions like "if I set this flag for a contact, do we want to keep the previously gathered data?" or "should that flag also affect bounce processing?".

You might also consider doing this as an extension at first, because it will take a while to be released in an official CiviCRM version. Plus, you could make sure it's working and well thought-out.