I need help with my 6 year olds behavior

First off this is not his fault. This is my fault for letting it get this way.

My son just turned 6 and he has become very spoiled by grandma which is the babysitter. My son talks back to me, tells me he’s the boss, kicks things, is mean to my 1 year old and his own brother. We had his birthday party today and he said “i don’t like that, I don’t want that, that’s stupid” those kinds of things. I have tried time outs, taking things away.... I don’t know what else to do. He extremely shy around people until he gets in one of his moods and it’s so embarrassing.

Yesterday we went to a store and an older lady checked us out and she handed him his toy and he ripped it outta her hand and ran to the door and yelled “he’s never coming back” then slammed the door. I’m just sick. What can I do? Any advice. I love him to death but I need to change something