I think the question should be why do people stay with partners who treat them like garbage, because plenty of women stay with guys who treat them that way as well. A person can wear down your self-esteem. I think it can happen gradually, you don't realize it's happening. They isolate you from your friends and family, then chip away at your confidence. You start thinking you deserve it, believing you are garbage. In some cases you are recreating issues from your childhood.
One reason guys put up with awful treatment is that they're scared of losing their kids. He thinks that if he leaves this woman she'll prevent him from seeing his kids and turn them against him. He's probably right - control freaks have to win at any cost.