This article will say it better than I can:
www.parentingscience.com/aggression-in-children.html
There are other links in there too.
My dc was like this at 4, not so much with me, mostly, more with other children, and it took a lot of work but it can be done. There are so many variables here, it is difficult for anyone to give really good advice. It is likely to be to do with anger - but about what, things you could change or couldn't change? - and could be to do with his self control, to do with empathy, to do with trauma, to do with being too ahead at school or too behind, lacking social skills (all things which you could help with).
The most important thing is that you stay connected with him, try to grasp moments when you can get that, such as when he is wanting comfort at night to help him sleep. Keep giving. It will eventually come back to you.
Read books about how to treat others with him at night, and also books about feelings to get him to open up. I found last thing at night was the best time to find out what was troubling them.
Long walks, making sure you set aside 10 mins to play just with him in evenings, etc.