Per my lawyer: In Michigan you cannot defend yourself by striking or holding a person. In a self-defense case you are automatically guilty of assault unless you prove otherwise. In other words, you need 2 reliable witnesses (without a jail record) or a videotape of the incident. And in Michigan, since you are a man, you are automatically guilty of assault in a domestic case unless you prove otherwise. What I mean is, the police automatically arrest you in a domestic assault case. They do not have a lot of leeway in this. Then you see a judge and try to prove you are innocent.
Remember: guilty until proven innocent, just like in France!
The other thing is, she will never change, but you can leave before you get trapped in jail.
I have a long time interest in psychology, specializing in relationship dynamics for 30 years.
(Please note, we give the best advice we can based on the information given in a post. For better advice, please include the age of all romantic partners.)