Very careful checking of client/host variables would help resolve almost all of the MPP and related cheats. For things like tech rolls you would also need a carefully shared random seed, so the client and host could both predict rolls identically. This can be annoying to program (see the postmortem of Rise of Nations on gamasutra) but not impossible.
However, 'FOW Sniffers' cannot be eliminated if you're comparing game states at every turn. Since both the client and the host each have a complete copy of the the game state, all the hacker has to do is cleverly wade through it all to find what he/she wants (unit locations, etc...)