So whenever you sell or swap a player, they have the remainder of their contract paid up by the team they leave? My understanding was that if you leave to sign a new contract with another club, this would supercede any existing contract. So for instance, if Sigurdsson or Tosun have 1 year left on the contracts at Everton for say £100k per week, if they are used in a trade, the value of the transfer fee is instead used as a make weight in the total cost of the fee of the player you are signing. They would then, if they choose to leave as you rightly point out, sign a new contract with the team they move to. In this instance, let's say Palace offer either of them £60k per week for 3 years. They would then have the decision to make of £100k guaranteed for 1 year, or a new contract, worth less in the same time period, but guaranteeing them an aditial £20-80k over the course of the new contract.
Maybe this is simply my misunderstanding of the way these things work, but I have never heard of the outgoing team paying the remainder of a players contract in the event of a transfer before, unless the club are trying to cancel the full length of the contract before it is due to end, in which case the contract would obviously protect the player.