Hi A..
I have similar problems with my little boy, who is now four. It began about the time his brother was born, when he was almost three. If anything didn't go the way he expected or desired, he would fly into a tantrum which sometimes lasted for half an hour or more. My husband travels quite a bit with his job, and one evening six months ago when he was away my son had a tantrum that escalated into hysteria. He was hyperventilating and hitting his head against the glass shower enclosure in the bathroom, and I didn't know what to do. So I slapped him. It broke the hysteria, but NEVER do what I did.
The next day at school they called me and asked if he had had an accident. I told them no, I had slapped him when he was hysterical. They referred me to a social worker, who listened to descriptions of my son's behavior and recommended I read a book. It's called "The Explosive Child" by Ross W. Greene. Although the behaviors described in the book are often much more extreme than my son's, a lot of it fits. Basically, it helped me to understand that he doesn't do this to push my buttons. He does it because he can't help it. He hasn't learned how to react appropriately to stressful situations (being discplined is a stressful situation, among others). Sometimes I still think he's being willfully disobedient and needs punishing, but my methods of punishment and the way I administer them have changed. The book and the social worker have taught me methods that work better.
I found some of the stuff described in the book a little scary, and much of it very sad. But don't let that stop you. You'll understand and feel much closer to your son once you get more insight into why he does the things he does. I'm afraid there's no easy fix, at least not with my son, but just keep loving him and working with him, and eventually it will get better.
Good luck!
J.