Oh, and another thing; if you do get an on-site contracting gig (this is how I pay for my business) remember that most on-site contractors are basically people who were not skilled enough to get the job full-time. If you are shockingly better than the other contractors on the team, they often put up with a less-reliable schedule. Oh, and developing a reputation for honesty on your timesheets is also recommended. The body shop is going to want you to just put all eights, but if you are good, and the client notices that you are good (and that you are honest on your timesheets) they will go to bat for you. You may technically work for the body shop, but the only people you really need to like you is the client.
(If you can contract without a body shop and still get a good rate, shoot me an e-mail and explain how that works.)
Go to industry conferences. Shake hands. Let folks know that you are a software developer and love coding for folks. I'll bet that you end up after each conference with several people you can do contract work for.
Do great work and these folks will be telling their friends and you'll have more work heading your way than you know what to do with.
You might find that this condition is the best thing that happened to you. You work for yourself, on your own schedule, for folks that you truly like and work that you enjoy doing!
So that's what I would tell you: forget about regular employment and find consulting/contracting jobs.
Oh, and I don't know the details obviously, but try to get back with your girlfriend - 8 years - you have a chance I think, she almost certainly misses you too. Show her this thread maybe :)
DSPS is not cureable. It can sometimes be managed with a lot of work, but realistically it rarely succeeds. You have it, so you have to manage your employment to work with it.
You're lucky to be a programmer. In the olden days I guess you would be a craftsman.
If you need a place to start, use one of those online sites where you bid on work - the pay is lousy, but maybe you'll find a decent client, or referrals.
Also small businesses are always looking for contractors - they like it because they don't have to deal with payroll, or even an office. Start local - just walk up main street and poke your nose in each building. Leave a card. (Well I don't know what you do exactly - but I assume you can change if you have to, to match what small businesses are looking for.)