Boys get a surge of testorone at 3(ish) so they become more aggressive. They get several surges throughout there childhood.
When a small child yells I hate you, what they generally mean is you just said no to something and I its not fair. Just respond with well I love you, he's doing it to get his own way not to hurt you, it doesn't mean the same to a small child as it does to an adult.
Time outs will work in the end but once a child has learnt a certain behaviour it takes a long time to undo,he's taken time to learn it and its become habit. If thats what you've been using thats what I'd carry on with, you do need to be very strict and consistent with them though, which is the hard bit. I give my son 1 minute on a step (if you don't think one minutes enough try sitting on a step in total silence for a minute, it'll change your mind) and the time starts when he's sitting still and stopped any noise and starts again if he talks during the minute. Its not a punishment but for him to calm down. I also encourage him to go and sit on his step if he's feeling angry so he can calm down before he opens his mouth!