You know when someone loves you? They NEVER treat you like your DH treats you. Never.
Just because he can be nice sometimes, that doesn't mean he isn't abusive. It doesn't mean he loves you or respects you. All it means is you're in a cycle of abuse, and he's in the 'nice' phase. It's intended to make you doubt yourself, blame yourself, and stay with him.
Then he can be abusive again.
Please put your children before this vile man and leave him.