It's hard when you're in an environment with other children, as it's second nature really to compare, even though we shouldn't. The angelic 4 year old possibly gave Mum and Dad absolute hell this morning and will at bedtime, but in between butter wouldn't melt.
I know they test boundaries in the toddler years, but it can happen at any time really.
Has he had anything that has changed his routine or environment he's in? Was the problem prior to the summer holidays or as a result of?
I would personally keep check of his behaviour when at home, it might seem infantile but maybe a chart with the day's split up into sessions. That way he can see the unhappy faces, he's reminded he's been naughty, set a benchmark of 'x' unhappy faces, he loses something he enjoys. Every time he protests revert back to the chart.
Have say 3 faces, happy, neutral & sad. If you have crayons colour the squares in if you have time green for good, yellow for inbetween and red for naughty. Just so he can see after say a week, how many red boxes he has.
My method of parenting is different in that I don't shout, I don't hit, I don't even threaten to hit. Just a change in my tone of voice lets my DC know Mummy isn't happy. When he does something naughty, remove him to a safe spot, say the stairs, explain why his behaviour was unsatisfactory, explain how you want him to behave, as often as you can, say I really don't want to put a sad face, but if you're naughty Mummy has no choice.
As autumn is coming, maybe start reminding him that Santa (if he exists in your house) is checking his lists, you'd hate for him to be on the naughty boy side.
When he does something good use positive reinforcement, Mummy is so happy with you, Mummy loves it when you do good things, shall we do something special like play a game, read a book, do some arts. Keep on reminding him that this is how Mummy wants him to behave.
Hopefully once back at school things should change. I do think summer breaks are hard on parents and children. Try and think of all you can that he enjoys so you engage with him.
When he's being told off hold his band, with a hand on his back or leg giving comfort whilst you explain everything.
It's important to show actions have consequences, so no afternoon cartoon. Instead you want him to draw a pretty flower to say sorry to Mummy for being naughty. Put it where he can see it, if he behaved whilst doing that activity, tell him several times how pretty it is, also that it makes you so happy when he's good, the picture is better than real flowers.
I hope I made sense, I think positive reinforcement is such a good tool. Also removing him and sitting him on the stairs, whilst being loving, shoes love is unconditional, Mummy still loves you, but you should do 'x' because 'y' - ask if he understands. Then do an activity that is positive and praise the good behaviour, warn him about the bad, like, we're having such a good time, don't let naughty (name) come back as you prefer good (name)
One activity I've just thought of is masks. So if he's naughty, go through the routine, then say we're going to draw some masks, one is good (name) the other is bad (name). Comment throughout the activity how much happier the good face looks, that's really nice I love it. Then for the naughty face ask can he see differences between the two. This is my sad face, show him yours, Mummy looks so much better when she's happy with (name). Mummy really doesn't like getting cross. Offer a hug, then a treat after the activity if he was good.
Sorry for the essay 
