It's my pet peeve when someone presumptuously sits in the seat I was assigned because they want a better seat or because they want to sit next to someone else. Typically, when I see someone in my seat. I'll flag the flight attendant and quietly tell them there is someone occupying my seat. I let them deal with the person. Usually, the flight attendant will ask them to return to their seat. That removes me from being the bad guy in the situation.
As for kids and switching, that's a tough one. Again, I usually go through the flight attendant. If they know you're moving to help someone else out, specially a kid, and it's on a long flight, you can usually count on a nice perk. Like a free drink or two or a bottle of wine.