I think it helps to deal with things more directly sometimes, not just with words. For example, if you asked him not to pour water over his sister and he says I can if I want to, then deal with that immediately; lift him out and say "no, actually, you can't stay in the bath and do that". If he wants to go back in, he agrees not to do it again. Or be massively positive about it and say "Oh, you are washing your sister's hair, how helpful".
Also your role model is incredibly important at this stage. You do need to talk to them with respect and politeness even when you need to be firm with them, because they will reflect any rudeness straight back.
It's not bad for them to get the last word, IMO. You are the adult, you hold the power really and they know it; they want the last word as a way of asserting themselves as people and saving their dignity. Kids this age have a strong sense of their own dignity and it's easily wounded. Let them have the last word - just ignore them!
Don't give them the power of making you bicker with them like a kid. Ignore them, or remove yourself from the vicinity.
And I think at this stage consequences need to be absolutely immediate, and related to the problem, rather than just time out or removing toys etc.
And I wonder why you think sending him to his room isn't working - i think don't expect immediate results. If it's a sanction you want to impose, do it; don't expect him to be cowed by it every time; but if you are consistent he will respond to it eventually. And if nothing else it's genuine time out for you both. If you look at it that way, it's a success because it's time out. He will learn to change his behaviour more from your example and from being TOLD what is and isn't acceptable.