Leave
As a man of 25 who has been married for 2 1/2 years, I must say that I would NEVER, under ANY circumstances treat my wife in such a way. Period.
There is obviously no consideration for you in this relationship.
Some things are more understandable than others - blowing savings, for instance, isn't necessarily terrible, as one would expect him to want to spend it while he's got it and it seems it's his money to spend if you two have kept your finances completely separate. Running up credit card debts, while hardly mature, is somewhat forgiveable assuming that he has life insurance that will cover this and his other debts once he has gone. If he does not have this insurance, than he is simply being immature and demonstrating a complete lack of care for your well-being. I hope you are not stuck with the bill. Leaving now may help prevent that.
His adultery alone - not once, but twice - is reason enough to leave. There is NO excuse for that.
You've pointed out his sad past growing up in foster care. While unfortunate, his past gives him no excuse for his present actions. He can either be a "victim of circumstance" (and by "victim", I mean someone who uses his past as an excuse for his present actions) or an adult and his own man, willing to take responsibility for what he does. He refuses to grow up. Clearly he has made his choice, making your choice much easier. He obviously has no respect for you. Don't let him make excuses for his behavior. To paraphrase those great philosophers, Blink 182, don't let your future be destroyed by his decision to use the past as an excuse for everything.
Some have argued that because you've been with him so long you have a lot "invested". I would argue that this is faulty thinking. Consider the economic principle of
Sunk Cost. Eight relatively good years are no reason to stick around for what looks to be, at most, five lousy years in the future.
His other actions - spending his "good" moments out with friends drinking - as one poster notes, this just destroys him more and more - while leaning on you for all of the bills, housework, and other obligations speak to even less maturity. Relationships are two way streets. If I were in his position, I would certainly want to spend time with my friends as well, but I'd want to spend much more time with my wife. I'd blow my savings on vacations with her, not alcohol with my friends (although I don't drink, myself).
His medical condition is unfortunate, yet it seems to me only another item to throw upon his stack of excuses - the foster homes made me do it, the condition made me do it, etc. He clearly doesn't love you and, if he says he does, then he is an even greater liar.
Drop him now. He obviously doesn't care whether he will live or die - why should you? No sense in going down with the ship.