First off, don't beat yourself up - 20 min is good. Just make sure that 20 min work periods are punctuated with 5 min break periods.
I have ADD (not ADHD), but here is what works for me.
1. Drugs - After much resistance to the idea as well as near exhaustive experimentation with alternative therapies, I tried Concerta and was amazed at the results. On the night of my first dose I had what felt like the best sleep of my life.
2. Awareness and understanding of the symptoms - If you are like me, you are not procrastinating because you lack focus -- you are procrastinating to achieve focus. You are effectively self-medicating with adrenaline. The resultant constant anxiety about both not working and upsetting your wife keeps you sharp as well. You still are going to need the 'fix', but strive to get them from either drugs, or different behaviors.
The solution for me was to strategically fill all of my 'free-time'. It sounds like you have a wife and kids, so this should be easy. Lean into being a good husband and father. Block out dedicated family time where you are focusing on them and not stray thoughts about work. It is the 'limbo' state where you are present at home but thinking about something else that is the killer.
Make sure that this time is centered around an activity - not TV/Computer. Cooking. Washing dishes. Doing Laundry. Playing with the kids (for real). Painting the guest room.
This does 2 things: it keeps your family happy, and leaves you just enough time to cram in work when it is time to work. Too much time on any one task will put you in 'limbo'. I'm sure that your problem isn't just at work, I'm willing to bet that you are not making a habit of being present in the moment. Off hours practice being present at home will only help things.
Also, it sounds like you know that boring problems make you procrastinate. It may be worth looking into ways to make boring problems interesting...
3. Administrative Pre-Planning - I know that trying to work around anything that could derail my attention is not going to work. The solution is really as simple as removing the possibility for those distractions to occur.
Seriously - Restrict your internet access with site-blocking , headphones to keep co-workers away (even without music - I can't listen to music / TV when I am trying to work). Whatever your triggers for 'limbo' are, acknowledge them and make sure that you have no chance of being exposed. Not ever.
4. Unwavering Planned Routine - This doesn't work without #2 and #3. I could never stick to routines because I needed the rush that I got from a chaotic lifestyle. When you turn it around, you can get almost the same rush by being optimally effective at any one time. You can race the clock for your fix. If you have to decide at any given time what to be optimally effective at, you will deliberate and go into 'limbo'. Pre-planned routine is a good way of overcoming the impulsivity and reduced long-term executive-cognition that is characteristic of the condition.