sometimes knowing why he's acting the way he's acting is enough for you to pull extra patience out of thin air. When he does something that upsets you, use your empathy.
I'd try to talk to him about it at a time when it's not a hot issue - not during a fight or anything. I'd be really humble about it and let him know I want to be supportive. I would NOT try to fix him or push him into doing things.
"it makes me feel sad to see you hurting..."
"I don't understand what it's like..."
"if you don't mind telling me, what do you do that helps?"
"or what's your plan?..."
if you really are just listening and not trying to fix him...then you can continue with:
"I read that getting an animal like a puppy helps - but since I don't know what it's like I don't know if it would really help or not. Do you think that's something that might help? I didn't want to just get you a puppy cuz I don't understand if it'll help or not..."
"What is your plan and what can I do to support you?
"I know you don't want to do counseling. I don't want to fight. I want to understand. I want to understand why counseling isn't the right thing for you so I can support you better. I'm sorry I've been pushing you for it so hard."
He'll know if you're being supportive or trying to push him/manipulate him into doing things.
It's way worth your time to just stand back and see where he's coming from. Do NOT try to explain your position on things. He already knows. If he gets defensive, you will NOT get to know what he's thinking. Knowing what he's thinking will definitely help.
If he's not ready to open up to you, just say, "Ok, sweetie. I love you." then give him a kiss and let it go. This will help make him feel safe.