Have you figured out what you're doing for your address? Do you have a nice set of clothes, haircut, and shave before interviews? If you don't put a residential address on your resume, it isn't going to help you.
I am sure you're already getting enough advice on the technical aspect of finding a job in this thread. You can know anything, but if you can't get through the door because humans are superficial you're still screwed.
I would do this: hit up freelancing websites and make enough money doing small gigs online to get an apartment or rent a room with somebody. Those sites have a bad rap, but I promise you I've done well enough on them to say it's worth your time. Accept a low rate at first to get feedback and ratings on whatever site you choose. Better freelancing companies also poach people from those sites. If you have a good profile, someone will ask you to come work with their clients instead. It happened to me.
Worry about creating a marketable image: your online profiles personal website, github, stack overflow, linkedin etc, your appearance (fitness will make you more marketable), and your sales pitch. Write a pitch and rehearse what you're going to say in interviews. They're going to ask you what you've been doing! My advice: don't tell them about your recent misfortunes. It might be true, but would you want to buy a car that had mechanical problems and was found abandoned on the side of the road, three years later? You'd want to buy a shiny new car. You need to become a (good) used car salesman and you will find yourself in a job.
Good luck in your search.