Q: When I move the Dragon to another player, does it have to be that player’s Keeper/Creeper that I discard?

A: No. You could move the Dragon to someone else, and discard a Creeper in front of you. Or give it to Player A, and trash Player B’s Keeper.