Energenie (Gembird) sells power strips that are controllable via USB or LAN. Not overly efficient (price, power consumption) I think, but it works.
AFAIK even the basic USB version can store short programs via a script tool like sispmctl, so you could even get your Pi to reboot with something like : socket 1 on for 2 minutes (giving enough time to shutdown) / off for X seconds (Pi complete power off) / socket 1 on (causing the Pi to boot again)
More interesting perhaps, that brand has started developing products that are compatible with a Pi.
There may be better and/or cheaper solutions. But I've used sispmctl in the past and it does work.
BTW, don't cut power immediately after screen blanking. Wait for some delay and then power off. Even like this, you'll meet cases where your activity makes the devices bounce from power off, which is none too good.
I have wished for a long time someone would come up with a power manager based on bayesian filtering to predict the times at which it is most likely a system should be running (or stopped)... I think it makes sense, esp. with machines that have so many sensors like a Pi. But I suck at maths, so I could never resolve to try and see for myself.
EDIT: sispmctl, not "syspm". -- http://sispmctl.sourceforge.net
Probably obsoleted by newer CLI tools you can find on GitHub.