In response to mxt's comment:
It might sound stupid but make it a rule that each player must be on the ice a minimum of say 8 minutes (or so many shifts) per game. That might force teams to sit the guys that have no business on the ice other than to fight.
The coaches can't be thinking about ice time for goons while they are trying to run a bench. And what happens when it's a close game but the goon needs a few extra minutes? Imagine that Thornton clowns it up in the first period. With 13 minutes left in the third period, he get the message send down from up high that Thornton needs to be on the ice for 5 more minutes or (whatever the penalty/suspension will be).
It just wouldn't work.
They need a grassroots campaign. Teams need to leave the goons behind and employ hockey players. There are many teams that do already. There aren't many goons left.