While I claim to be completely ignorant about the inter workings of BitCoin, I have been in software development for 35 years. With all of this discussion about "bad actors", isn't there a way a pool operator can test a miner's hardware/software by sending a "test" packet with a known result? The miner wouldn't know when a test could take place, the pool operator could send one whenever he/she wanted. This would be along the lines of a random "drug test" used by sport teams. The pool operator could use this type of test to identify potential "bad actors" and track how many tests fail over a given period of time or number of tests. I know that miners with multiple hardware miners can mine under a single miner name, the pool operator can send a number of tests in proportion to the hashing power of the miner. While this isn't 100% fool proof, I think it would be a good starting point. If a pool operator advertises that this type of testing takes place on the pool, it might be enough to scare away the "bad actors", just like putting a sign in front of a house stating that the house is protected by an alarm.
Just my 2 cents....