Ahh, just going through the same thing. Get rid of him. Your son is more important than an unworthy rooster. You seem able to provide a nice, loving, warm home for your pets (I think of mine the same way!). You shouldn't feel limited to ever take on more given the fact that you own a mean rooster. Not all roosters are mean. Some of them are just fueled by more instinct than others, and for the wrong reasons. Your son is very ovbiously not a threat.
I had a rooster I hatched from an egg, loved, spoiled, and planned to keep as long as he lived. Dash was a very nice boy for a while. Then, he went after my 7 year old brother, not once, but twice, in a row, right in front of my whole family. Not long before, he had started to pick fights with me, too, but it was never so bad. I told myself that I could not subject my brother to dealing with my roudy rooster. Dashie met his end by the hands of some neighbors down the street. Made me sick to think that my beautiful little boy became what he did. But a bad memory was replaced with a happy one. And now we have Rocky to take care of our flock and exhibit what a rooster should be: loving, protective, but still laid back.
You know where I, as well as many who have responded to this thread, and others who have not, stand. I have tried dealing with it and even fixing it, but a bad rooster is not broken, just tainted. It might take a few tries, or none at all, but you can stumble upon the best of roosters, even when you don't plan to. I won Rocky at a fair and thought he would be like all the others. He surprised everyone, and continues to do so.