Look at it this way... It's not that hard. It's just hashes on top of hashes.
Mining produces a block proof. Not really. It produces a number. We're just using it as a block proof.
What if we added another layer?
Take a hash of what we currently call the block proof.
Take a hash of the pending vote list.
Add them, or otherwise combine them together, call that the block proof.
MNs monitor block outputs. If a given source manages to output 51%, it's discovery is rejected, and the next in line is "blended" with the vote stack hash. That becomes the valid block proof.
There would be a race to be second place instead of first place, because whoever is next in line gets one walloping huge payoff for the small amount of hashing they did.... Perfection.
With this extra layer, it doesn't have to be just two inputs. Any number of metrics could be blended and labeled as the proof.
This is an incomplete idea because I can already think of a way to possibly game it. But it's something.
Essentially, let the masternodes be "the boss." The miners come to the MN wit what they've found. If they found too much, their solution doesn't get merged with the vote stack hash, the next one in line does.
I'd like to see a better, distributed idea. This merely punishes the best mining pool for being the best... That's a bad idea economically (if you cut down the tallest tree "for the greater good" every day, eventually there are no more trees; socialism). But, it might work... At first it could be ugly. But, eventually, it might become better to mine without pools as there is nothing left but shrubberies... If the ban for being #1 lasted for 48 hours, holy cow... The chaos that would create in the current bad idea mining pool infrastructure... That might work...
NI!
Stop mining so much or the MNs will say "NI!" to you!