> You didn't buy a full license to their software.
You bought a copy of their software. Now that copy is yours and not theirs. Why shouldn't you be able to transfer your copy of it to whatever you want or use it however you want? You paid for it.
Licensing is for granting additional rights you don't otherwise get with a copy, e.g. a volume license allows you to reproduce additional copies for multiple devices at once, or the GPL allows you to reproduce and distribute copies to other people under certain terms. Taking away rights via license is inconsistent with the first sale doctrine.
> Do you want them to spend money developing iOS for other devices, just so you can take that for free and install it on an Android?
Why would it have to be free? You don't get Windows for free. But you can install it on a Dell in addition to a Surface, and so can Dell.
> You knew the rules before you pulled out your wallet.
Saying "you knew the rules" is not how you establish someone's authority to create rules.
> For iMessage - they run a service that costs money.
This is a fig leaf. Messaging services cost a negligible amount of money to operate and if anybody actually cared about this, no one is demanding for them to operate it themselves anyway rather than using or creating a protocol that supports federation.
Notice that substantially all of the other popular messaging services are just as free to everyone, including the ones not limited to any particular platform.