Hello, thank you for your question. Sorry to keep you waiting. What you describe sounds intimidating and scary for both you and your son.
Scary to the point that your "fear" response is kicking in- the fight or flight when we are met with something that scares us. When you say you are "very uncomfortable...making my heart race", that sounds like fear and or anxiety.
I'm glad you reached out tonight with your post- it tells me you are trusting your "gut", and putting a bit of thought into this. Something tells you- including your body/physical response, that something is not right.
An angry man who is drinking is more is likely to become more agitated.
It's important for you to really think about what you can tolerate/accept in this relationship. I sense that the way things are- is not something you are tolerating- trust your gut. If you can prepare ahead of time what you want to say to him- plan a time to share how you are feeling, preferably at his good moments, when he's not drinking, is rested, etc.
The use of "I" statements can be effective in reducing defensiveness when communicating with another, especially when it's something more difficult to say. For example: "I feel uncomfortable, anxious, worried...(whatever the emotion) when you become angry, loud, intimidating my son..., and I would like you to consider what I have to say..." or "I am anxious and feeling physically ill and I can not live comfortably in an environment with someone angry, agitated, unpredictable." Might it be easier to write him a letter? Talking to him when he's more calm is important vs. trying to confront him when he's in that state of anger.
When we use the "I feel", we are not blaming, we are sharing our feelings, owning our feelings. When we say "you are always mean..." it's more like pointing a finger and the person responds defensively- go into the fight/defense mode.
Another thing to consider would be to approach him with: "I am worried about you, I care about you, I've seen changes, and I'd like you to talk to me more about what's going on". He may be dealing with stress, work, money, some sort of conflict he's not telling you about. Drinking can be a way to avoid or numb the emotions- "drown the sorrows" so to say. Validating he seems to be having a hard time can lower his defensiveness too.
May be a good idea to prepare yourself for increased anger if you approach him. He sounds unpredictable. You nor your son deserve to feel anxious and afraid in your home- your place to feel safe and comfortable.
http://psychcentral.com/blog/archives/2012/07/26/how-to-switch-off-an-angry-person/ Here is an article that you may find beneficial. If you have trouble getting to the link- go to psychcentral.com and put in "How to switch off an angry person".
Anger tends to be a response to feeling threatened or being fearful of something. It's his anger, try really hard not to take it personally. It's hard not to feel the tension and negative energy from an angry person. There is a cycle to anger- like you said he back down when angry only to become angry in a few days. An angry episode, lets out the "steam", all seems okay, but the tension is again starting to build. An angry person is out of touch with their emotions or are fighting emotions they believe are not "manly". Anger is often a reaction to some level of fear. Rather then tension building it's important for a person to learn to begin identifying the emotions, and share this with someone. Anger management 101!!
Sounds like you have tried talking to him and he's aware of how this is affecting you. Now may be the time to get really strong and assertive and when he gets angry- say with conviction, "I can not have this toxic anger around me, it's making me sick". He needs to find a way to take a time out, to see a stop sign. He will have to decide it's a problem before he can make changes. Letting him know it's affecting you, and your feelings for him in a negative way, may motivate him to take a better look at this.
Let me know if you have other questions or comments. Thank you for your question!