Welcome to the terrible 3's. I have always said that 3 year olds are pre-preteens. Your son is showing you how grown-up and intelligent he is. By this age, children start testing their boundaries and need new rules set by their parents. You have to start re-thinking how you talk to him and discipline him. The sassy, bratty talking is a tough one. You may need to try a few different things to get that to stop. We used a star (reward) chart when my oldest daughter turned 3. When your son shows favorable behavior, he earns stars, when he is bratty, sassy, etc... he loses stars on his chart. If he is sophisticated enough, he may be ready for you to reward him with something at the end of the week for having stars on his chart. You can customize this to work for you and your child. This doesn't work for every child. He may be like my 2nd child, and not give a hoot about the stars. Time-outs may work better or losing priviledges...having toys taken away...you have to figure out what makes him tick.
For whining, we would tell our daughter that we couldn't understand what she was saying. We would tell her she had to talk in a normal, big person way or we couldn't understand what she was saying. This doesn't mean that you give into him everytime he says it normally, like wanting to unbuckle his seatbelt. Obviously, that is out of the question, but don't even discuss it with him until he asks in a normal voice so you can explain to him in a normal voice why he can not. Keep it simple and keep calm....this is the hardest part, but I promise, if you can do this, he will stop whining. Your husband will have to be in agreement with you on this. If he gives in and you don't, then all the hard work is for nothing. It takes a lot of patience and can take a couple of weeks, but once you get past it, he probably won't whine again.
And, yes, sometimes you have to ignore him.
Good luck!