I once had a therapist who firmly believed in a system called 'the 50 minute hour'. It generally applies to studying, but I don't see why it can't be used for other tasks, such as lengthy chores, or things of the home improvement variety. The idea, really, is that you apply yourself to whatever it is you're doing for a solid 50 minutes, and then complete the hour by rewarding yourself - and your mind - with a 10 minute break. Those 10 minutes are meant to be your time to do the things you wish you could be doing during the other, busier 50 minutes. Once your 10 minutes are over, the idea (or goal) is to return to your work.
The reason that a 10 minute break isn't seen as unproductive is that a lot of people tend to procrastinate, and by doing so, they leave themselves with no other choice but to cram everything into one hideously long session. When you feel the need to do everything at once, you generally aren't focusing on anything. By giving yourself the freedom to do one thing at a time, and pacing yourself generously, you end up feeling less stressed, and are more likely to get things done.
You also mentioned something that I used to encounter quite often - the period of feeling super-productive. The 50 minute hour also applies to this, and it isn't an attempt to interrupt the 'roll' you've been on, it's just a break. Brief breaks are helpful while studying - while working, even - not only because they give you[r mind] a chance to step away from that which you've been working on, but because when you reach the point where you've been working for three to five hours simply because you're excited about nearly being finished, you tend to forget that you actually deserve a break. You can go into the 10 minutes, and come out of it feeling just as enthusiastic about the task ahead of you.
I know it sounds silly, but give it a try.