No you shouldn't hit her.
I don't know you but in most cases its the mans fault that this kind of stuff goes on. If a man has a set from the first date, she will either get with the program or find somebody else. Sometimes the man tries so hard to impress her from the beginning that he has to keep the same attitude for the rest of the relationship. Sometimes the dude is just a flat out pussy and gets what he deserves. Sometimes he has control at first but gets lazy and lets the woman get the upper hand.
Either way it sounds like you're her bitch and I don't see it changing for you. If it has gone on this way for too long, she wont allow you to regain control and you two will either be pissed off every day or it will end in divorce if you try.
Let this be a lesson kids. BE A MAN.