A simple enough solution, once an award is granted the patent itself is listed on a website where anyone can have a look, if they can see that the patent is invalid due to prior art they can give the details of the prior art, the USPO looks at the details and if they say "oh, right, there is prior art" they revoke the patent.
They could also introduce a rolling fine system (to make lots of money for the government) which is a double of fee which starts at $1, for each patent that gets revoked in this manner the fine doubles, $1, $2, $4, $8, $16 etc. which resets every 5 years back to zero, the low initial entry point wouldn't put off people who have genuine claims to patents putting in an application that is later revoked, big companies that file thousands of patents every year would start to make sure there is no prior art when the fines get out of hand, and it doesn't take long for that to happen....
1 2 4 8 16 32 54 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072. In just 18 patents the fine hits over $100k, 21 patents and it hits $1m, 28 patents and it's over $100m, I think that kind of a fine would make any company double check that their patents were valid before making them (31 patents = $1 billion).