to me, it sounds like a problem with "impulse control." And him not being able to express himself, and him not knowing how to cope.... thus, teaching him "coping skills" for his frustrations would be good. But it takes practice and consistency. Like anything else.
Punishments/discipline of course are in order... but, a kid does not always respond to that. It can just make them more angry... thus feeling resentful. Thus, more angry.
Thus, using punishments are treating the "symptom", not the cause. Like a band-aid.
How does he feel about himself? Is he a confident child? Self-assured? Does he know how he feels and can say it? Perhaps teach him words for his feelings and help him 'learn' how he feels... otherwise, kids get all frustrated because they don't understand their feelings. Then once they know their feelings, they can say it, you validate them, then give him ALTERNATE ways of venting it. Like: hitting a pillow, telling someone, letting him yell in his room but not AT people etc.
Have you talked with him, meaning just seeing how he is feeling or what is in his head? Not lecturing him, but just let him talk stream of thought... to see what is going on... in him.
You might also keep making sure he naps. Tired kids, create fussy kids and they can't cope.
Make sure he is eating... because if not, it makes some kids just fussy... and moody.
Also, if he is teased... then teach him ways of coping too. ie: telling the Teacher to get help, teach him the actual words for saying it, tell the other kid "stop that's not nice..." , or find someone else to play with. etc.
He is 4... and if he is not able or learning how to cope with his feelings.. then it will continue to be a problem. Punishments alone, will not work.
It will take time, for him to un-learn his anger reactions, and to then react in a different more positive way.
My daughter is 7 and in 2nd grade. She has a classmate, JUST like your son. The Teacher has a real hard time with him, and the other kids just don't like him. He tantrums/cries/whines/gets angry for any little thing... or any 'unfairness' in his mind or if he is not first in line or not chosen for something, or if another kid has a turn before him, or if a kid comments about him etc. This boy is 7. And his reactions are still like that of a toddler. But by this age.. it is a "chronic" problem. His parents are real nice, but they don't address it, and just revolve around him. The Teacher feels drained because of him. But who knows what the problem really is, with this boy. The Teacher feels he needs counseling or something.
all the best,
Susan