I'm Dr. Jackie, an interpersonal communication researcher/professor and relationship expert. I'm so sorry to hear all that you have been through. You are going through so much with your relationship, job situation, financial situation, etc. I am hoping that working with me or any other Expert can help. We are not a substitute for face-to-face counseling, but JA does offer phone and Skype services to make it more conducive to that.
At any rate, I know you said he won't talk to anyone--like a counselor or therapist. Would he be willing to chat on here or phone/Skype? He needs to work through his anger issues before he can even BEGIN to be in a good relationship. That is, obviously he has pent up anger and frustration. And until he can be emotionally healthy himself, he cannot be healthy or good for a relationship partner because he becomes abusive and hurtful. And you can see it escalating from verbal abuse to physical with your son. This definitely is not the place right now for you and your children.
I know you have been staying with him, hoping he will change/get better. Unfortunately, the research studies are not showing that. In fact, humans are so used to getting into patterns of behavior that unless there is an intervention of some sort (like a near death experience, some other tragedy like loss of a loved on, or counseling itself), there is a 99% chance he will continue in the same patterns and even become more abusive as the spiral downward has already begun. I don't mean to be negative. The good news is that he CAN change, but he needs counseling/therapy in order to get healthy. 99% of people cannot do it on their own. Even therapists have therapists.
I wish I could offer you some magical strategies to help, but the reality is that he has to WANT to change. Dr. Phil is right when he says, "You cannot change what you do not acknowledge." Do you want to talk on the phone or Skype? Would he talk to me? Please let me know if you want to do either of those things or even chat more on here. I will be gone from the computer for a few hours due to other appointments but will be back on here from 6:00 East Coast Time until night. Please let me know.
Take good care,