There is a simple way to punish people who make fat finger mistakes and that is to have all trades stand. If you don't double check your prices, you deserve to lose your money. No bustable trades period. Only then will people learn not to be idiots.
At some point, NYSE also blamed a system update for the CQS delay during the flash crash. It is beyond ridiculous. Bye Bye investors, it was nice to know you.
There's an idiot here, but its not me. Guess who. And now you're memorialized as one for eternity. I guess Szeven is the only one here that hasn't drunk the flash hysteria kool aid
The cure there is worse than the disease though. I gave a way to stop this, in a prior thread after the flash crash. What you do is reset the fat finger trades to the low of the day before the fat-finger or after the market has got back to equilibriun. That way the fat-finger person loses money, the dip buyers get paid for providing liquidity and taking the risk that someone just nuked NYC (i.e. that the selling was legit in response to a genuine disaster) instead of being screwed by suddenly being naked short from lowed down, but you don't have some poor trader or institution potentially losing $1 trillion in 3 minutes because a clerk or programmer or their dog fucked up on a computer. I don't see any real downside to this method.
Your method is probably the best way to handle the problem. The buster gets penalized (but probably not taken to the cleaners) and the liquidity provider gets something for having their neck on the line. Even though I can't stand the busting, it seems like a good compromise.