B.P.
I think the first thing you need to do is educate yourself on normal child development. Your son is a normal 2 1/2 year old boy. I think your expectations of him are just too high. I really hope you were not spanking him in the past for these types of behaviors. I think the best thing to do is model positive behaviors and encourage him to repeat those acts. When you tell him you are going to give away his toys it just makes him anxious and ashamed for wanting to be with you. He sounds bored. I know its hard with 2 kids especially in the winter but I think you need to get him out more (not sure if you are a SAHM or not). The best way to "dicipline" is redirect him, ignore him, and lots of love. Only "punish" him if he is hurting himself or others or disrepecting his family, friends, or home. I make my son (22 months) stand in the corner for 1 minute when he does things like continue to kick me when I am changing him. He thinks its a game to kick and he hates to stand in the corner. But it works. If they are acting out because they are tired, I think its best to ignore the behavior or try to make them comfortable if you can't put them to sleep right away. I think much better than spanking. Good luck!