Speaking as a married dad of two young kids: Yes, they do go on an on about things that don't matter to us. But that is their little world. I am not perfect, I am sure my face does not convey that I am super-duper interested either... But christ, to make it something that is an active trigger for frustration? Even if it gets to a frustrating level, it is his young child - dad has some growing up to do. Health issue or not, people need to be able to not take out issues on people in their lives who are not a direct cause of said issues. For example - if someone was an absolute nightmare to me at work, I will not be an utter ass to my wife at home, she didn't cause the issue. I can never understand how people can be so self-centered to take their issues out on other people, give themselves a pass, that "oh well, it's stress / my health issue / i have a lot on my shoulders..." Just, simply, no. Grow up, and work on yourself... - I mean, not you, OP, it is aimed at your partner.
Can I also point something out that I am sure is not the main focus, but it is also screaming problematic to me: "Car gone -> get pissed in the pub." Hello?! The two should not mix!!!
So, to actually answer your question - what would I do:
Sit him down and talk about his unreasonable behaviour, maybe trying to keep it as neutral as possible (would be hard!), and just see how he sees it...if he agrees that it should not be this way, or if he gives himself the old hall pass because of health.
(I have very little sympathy for people who excuse themselves and make themselves better for their shitty behaviour with excuses, because I think everyone should strive to do and be better, regardless of life being unfair. My dad was an abusive alcoholic, his dad too, and the list goes on... And all of them had the excuse that they turned out this way because their own father was like that and treated them bad... Well, I was treated like that, and it wouldn't give me the right to act like that...it is all about personal choices. I know i went off topic, but wanted to give the rationale)