Pay-per-use would is an interesting idea, but if you live with other people it gets a little more complicated.
The best tool I've found is an app called Self Control. It puts rules into your hosts file and either blacklists certain websites or blocks all of them and whitelists the ones you want. It uses an external timeserver so you can't get around it by changing your computer clock, and it runs regular checks to make sure you don't just edit your hosts file yourself. It's really pretty good. And in theory you could set up scripts that would start up certain blocks at a scheduled time every day. The one huge problem though is that it's Mac only.
I don't think there's a way to completely fix the issue externally, but having some powerful tools for limiting yourself would go a long way in making it easier.