My husbands temper has been short lately

So my husband and I have been married for almost 3 years (August is our anniversary). We have a 7 year old, 2 year old and I am currently 23 weeks pregnant with our 3rd boy. My husband’s temper has been a bit much lately, but tonight hit a peak. Since the new year, we have been arguing over what seems like EVERYTHING and he has been really quick to snap on me and the kids. At one point he was drinking every night (which he knows bothers me because my mother is an alcoholic and my dad is an addict who I haven’t seen in 15 years). I am currently not working due to health problems in my current pregnancy, so he is the obvious bread winner, which makes me feel guilty as is. But lately he has been lying and being sneaky about dumb crap (like how much his check actually was and about smoking after he said he quit) and tonight he lost his temper with our 2 year old and slammed his arm down on the ground hard enough to leave his finger marks and bring my baby to tears/red in the face/screaming. Long story short, he left for the weekend to go stay with his sister and of course made sure that he took his beer with him. I am so upset and hurt and just so tired of the back and forth. I do love him, but I can’t have that type of behavior around our children. Has anyone gone through something similar or have any advice as to where to go from here? I am so heartbroken.