We need to encrypt all communications expensively. Make algorithms which can be tuned to be arbitrarily expensive, computation-wise. Tune them so that it takes as much time as we can bear to encrypt and decrypt an email. Seconds, ideally.
The goal is to make it so that some large fraction of our computational resources are taken up encrypting and decrypting communications. Say, 10 or 20%. For every day uses this will just show up as emails being slow to open, since most people's computers are idle most of the time. But if your goal is to intercept and process all communications, all of the time, you can't do it without having an absurd level of computational resources at your disposal, even if you have all of the secret keys. Ten or twenty Google's worth of data centers.
If this was done properly, it would kill (free) webmail search. It wouldn't prevent targeted snooping, except insomuch as normal encryption does, but it could make pervasive snooping too expensive to be feasible.