My 5 yr old daughter has always been a very spirited child, but not hyper. She's always been independent and outspoken and I encourage her individuality, but she was most of the time well behaved. But after starting Kindergarten, she changed quite a lot. She doesn't hit, but she argues constantly, talks back, cries at the drop of a hat about everything(which is unusual for her)!! We've talked to her and her teacher and found that there are no problems at school, either academically or with another student, so we ruled that out.
I can't explain the reasoning why she's changed recently except to think it's just her changing as she ages, but we are dealing with it one day at a time. We make sure to praise her consistently for days when she does really well, or even for just situations that she handles well. We were doing this before, but now we make an even bigger deal out of the good behavior. This seems to help some.
We are contemplating utilizing the behavior color chart they use in her Kindergarten class at home. They start every day on green. If they get in trouble once, they change their color to yellow (verbal warning). If they get in trouble again, they change it to blue and have to have time-out. The last and worst color is red and then they call the parents and spend some time talking to the principal. Of course, we'd tailor it to a home instead of school, such as making red's punishment be something more like losing her favorite toy or her TV time for the rest of the day. We haven't decided for sure whether we want to use this chart, but I really like the idea of it. Maybe this is something you could use at home with your son that would help him be more motivated to behave better.
Hope this helps! Good luck!