I normally sit in the seat next to them and proceed to let out a monster burrito-powered rumbling fart. I mean a real doozy, if it doesn't rate on the richter scale and the plants in the terminal don't wilt, it wasn't big enough.
I then turn to them and say "If you can't handle an entire flight like that, you may want to return to your allocated seat."
100% success rate.
It'll probably even work against that guy a few months back who claimed not allowing the seat poacher to sit there was rude and selfish.