Sorry folks, this is LONG. Please bear with me. I could use some help.

So I am in need of some perspective as well as some tips on how to deal with my difficult 3.5 yr old boy.

He has always been a bit difficult. He was always this high energy, squirmy, resistant to sleep/naps, always-doing-the-opposite-of-what-you-ask-him-to-do kind of kid.

[He can also be super sweet, intelligent and thoughtful when he wants to be...]

Back to his behavior: Some of this is typical 3 year old stuff...some of it isn't (at least I don't think it is). Here are a few things he's done in the past few days (or just does frequently throughout the day) that drive me crazy...

-he will go up to his 16 month old brother and hold him by the neck (from behind) and essentially makes him fall down - kind of like a loose headlock. I don't think it is entirely mean-spirited but I have told him many times in the past to not hold his baby brother's neck because he will fall...he continues to do it.

-When he is walking or running, about 50% of the time, he will plow through other kids or his little brother, he won't go around them. The other 50% of the time, he will make some attempt to move out of the way, but it still won't be in time and he ends up bumping into other children. He is a solid boy so that usually ends up with the other child/ren crying.

-He screams for fun and when we ask him to use an inside voice, he disregards us. Sometimes he will make an attempt to be quieter, but a minute later, he is at it again. He thinks it is funny.

-When he gets upset, he throws things. Today I was reading him a bedtime book and he was playing with a balloon and making all kinds of noise. So I told him I wasn't going to read the book if he was making so much noise. He continued so I ended the book early. He was upset so he grabbed the book and it ended up hitting me in the face. I think he meant to just throw it but I was right in front of him so it landed squarely in my face. This did not go over well with me and I ended up swatting him on the butt and sending him to bed without any books or snuggling.

-During bathtime today, he was sitting down in the tub while his younger brother was standing next to him. He grabbed his younger brother by one leg and started pulling. I told him to stop and explained to him that his little brother could fall and get hurt. He yanked one more time.

-He constantly leans on people. He doesn't know how to sit in his own chair. He has to lean on the person next to him. He does this with teachers, classmates, myself, his father, anyone. When he was younger, it was a cute quirk but we still always tried to tell him to sit in his own chair and not to lean. Now that he is bigger..the leaning is just obnoxious.
He attends a Montessori school 5 days a week. We just had parent-teacher conferences and the teacher mentioned this as something the he does to the other kids...that we should work on.

I think the biggest thing that upsets and worries me is the fact that he is always doing the opposite of what we ask him to do. By always, I mean ALWAYS. We make it a point to ask him nicely but after the umpteenth time of asking him...we have to resort to threats, which I hate doing. But it seems to be the only thing that works...Is is normal for a parent to ask a child to do something and have them either completely ignore you or outright be defiant?

Almost everything from putting his socks and shoes on to him feeding himself dinner, to just simply saying HI to somebody (all things I know he CAN do, but he won't) have become such a battle...I hate admitting this but for the past year, I LOVED my son but I didn't really like him.

Can anyone provide any insight on this age group? I know the "threenager" period isn't fun, but i just want to make sure my son isn't borderline in need of some sort of help.