Silence/minimal contact for days, no affection at all. He always refuses to talk about it when this happens, & trying to talk makes him really angry
This is absolutely unacceptable.
At the very least, he needs to acknowledge this is a problem and show that he is taking steps to address it. If he isn't, he may become worse & worse over the years. He's only in his early 40s now, so God knows what he'll be like in time.
What he's doing is lashing out at you. It might not be physical or verbal, but that's what is is. He may be genuinely angry, in which case he has an anger problem, or he might be doing it to punish you deliberately, in which case its abuse, but it's still affecting you either way.
I wasn't in the exact same situation as you, but I know what it's like to practically have to fawn over someone so that they're nice, or at least normal towards you. Mine often used to totally deny that anything was wrong, even though I could clearly see that it was. I thought this was unintentional, until I realised one day that part of him enjoyed the service I provided. It more intentional than I thought. I think he kept quiet and made no attempt at self-soothing so I would fawn over him even more. It didn't matter how it affected me it seems - I think he enjoyed the attention, at my expense.
You see, it puts people in a subordinate position where they have to work hard just to clear the atmosphere and avoid any further disrespectful behaviour.
Unless you can pin it down to something like work stress, I'm guessing he is getting increasingly neurotic or bad tempered with age, or he's had his head turned.