Personally I think the only way to discourage the "High Mhash" whales is to have a Net hash limit at which rewards are fixed at zero.
This could be based on the average number of miners divided by net hash (If it goes over this then rewards are zero.)
then the decrease in rewards at ether side of the "sweet spot" can be modified so that it's not so harsh, as any whales would make the network hit the Zero limit quickly.
Or have a hard-coded rate limit fixed into the system.