How fortunate that your debt-load is comfortable. Unfortunately, you can do EVERYTHING right for some people and it still won't make them happy. Has he always been this way or could he be suffering from some kind of depression or seasonal affective disorder? Just be careful about some of the pitfalls of these people - don't become their scapegoat and let them blame you for their discontent. You also can fall into the routine of always having to "justify" yourself and the good of your household, too.( "i.e... "No, our house IS lovely! Our car runs fine..." etc....) Or, perhaps he doesn't take responsibility for his mood, actions, etc.... (Again - scapegoating!) It's not fair that everyone in the household should have to walk on eggshells, waiting for someone's negativity to emerge!
It's hard to get to the root of a problem - women generally vent and get it off their chests - sometimes it's all we need! We don't have to SOLVE everything. Men, may need to vent but USUALLY need to SOLVE. Have you ever taken "the man's approach" with him? "What do you need from US to be happier????" He'll say "I dont need ANYTHING!" and you'll have to probe to get to the root. Don't be argumentative. This is like calling his bluff. No one needs to always walk around on eggshells. Tell him that "he is appreciated - thank him for the positive strides that he has made to the household and now, what does he need from his family to make his life more positive?" You might not get it on the first run. Be patient.
Have these discussions, alone, in a happier time - maybe in a neutral place, like a walk in the park. Confront him about his negativity and how it's affecting your children. Because it IS affecting the children, he may listen. Maybe there is something that is lacking in his life that would make him calmer - like some alone time with you. Doesn't have to be long spurts - it just has to be on a fairly regular basis - some time during the week or more. Even regular date nights are good!
There is a great book (with a quiz included in the book) called the "5 Languages of Love". (there's also a version for children, too") The premise is that there are 5 different ways that people receive love 1) Through gift-giving 2) Acts of Service 3) Quality Time 4) Affirmation and 5) Touching. My husband and I gave each other the quiz, a couple years ago and it was very interesting. How you "perceive" love is through a specific method. Your husband may "buy" you little gifts (his love language) but that may mean nothing to you if he is is not spending time with you (your love language). It was sooo enlightening! Something to consider.
You can do ALL the right things and this may still not help - he should go to a counselor, then, to get to the heart of the matter. If you have a church affiliation - perhaps someone there can help, too. Also, don't know what employment field he is in but everyone is feeling the pinch of the economy and that may be an added stress on his mind, since you and he seem so financially diligent - "getting ahead" could weigh heavily on his mind.
Love your tag line... "I love my guy and I want to see him happy." ... You can remind him of that too and HOW LUCKY HE IS! (maybe on the second date night!) ...because he is soooo lucky to have someone patient like you.
Best of luck to you!