Post classes in the loop are being changed in certain themes

If themes don’t use post_class, which is what generates what you call the “default post class structure”, it is going to be difficult, and may be something you have to deal with on a theme by theme basis.

There are very few hooks in the Loop itself that you can use, and while things like the_content and the the_title would provide you some hooks there is no guarantee that the theme is using those either. If the author neglected something as critical as post_class, who knows what else is left out or hacked.

I can’t think of a general purpose solution for cases where the theme is simply doing it wrong. Even output buffering + regex won’t work as a general solution as you have no way to reliable find the content section.

Some people treat those classes like “bloat”. It is also possible that the theme or a plugin has hooked something that removes those classes.