S., first of all, you are SO not a failure as a mom. Frustrated, unhappy, sad, yes... but not a failure. Actually, you're probably pretty typical.
Now, I am not familiar with John Rosemond but I will say that, although his program may be wonderfully helpful, the key to coping with your son is to understand what is at the root of his outburst. Even though you say his outbursts are without provocation, there may be something there of which you are not aware.
How long has he been having these outbursts? Might it possibly be tied to the birth of your younger child?
Or it could be the appearance of a bi-polar condition.
As far as your own coping with his apparent anger and helping him to deal with it, you should congratulate him for verbalizing his feelings. It's a pretty impressive thing that a 3 1/2 y/o is able to express himself that way. Usually they just lash out and don't even understand why. The next time he starts acting up, when he says, "I'm so angry," take him aside, sit down with him (preferably snuggled in your lap because that is a definite comfort/safety zone for little ones) and just ask him about what made him so angry. (It's possible even he, does not know why he is so angry.) Talk to him about the right and wrong ways of expressing his anger. And explain to him how he makes his friends feel bad when he pushes and hits them. You might even want to consider getting him a punching bag for when he gets angry to give him an outlet for his feelings.
You also want to talk to him about the repercussions of his behavior. Talk to him about learning the best way to respond when he gets angry and how, to help him remember how he is supposed to behave, you will have to give him a time-out (or some other method) to give him an opportunity to think about his anger and response to it by himself. Determine the best way to teach him, be it a time out mat against the dining wall or whatever. Once you have determined what that will be, show him what the ramifications of his inappropriate behavior will be and tell him that, effective immediately, this will be his place/time to think about his actions.
By the way, that old saying, "You catch more flies with honey than vinegar"? It works with kids, too. Each time you need to correct him for inappropriate behavior, sit him in your lap or get on eye level with him and hold him close. Remind him of what you have said about his inappropriate behavior and the repercussions of that behavior. Then take him to his place and set him down for a specific amount of time.
If his behavior continues to worsen, you might want to think about talking to his pediatrician about referral to a therapist for more/better ways of behavior modification.
Good luck. Keep us posted.