We want to use Message Templates for tailoring our sponsorship renewal invoice reminders. We have multiple sponsorships setup as separate Membership Types with corresponding prices sets. However data about "membership" is NOT available as tokens when using Message Templates. That data is available as Tokens when using Schedule Reminders - but this means a separate Reminder is to be setup for each Membership Type. Question is why cannot Membership data (and for that matter Event data) be available as Tokens under Message Templates?
Welcome to StackExchange Grant!
In regular messages token for other "entities" such as memberships, contributions or event registrations are not available because each contact can have any number of them.
For example, if a contact had two memberships or event registrations, CiviCRM would not know which data to "fill in" when sending the email.
This is why CiviCRM has several special functions such as event and membership reminders or thank you letters for contributions.
Fuzion made an Extension that provides additional tokens that you should be able to use in this scenario. The CiviToken extension includes
Latest Memership Status
Latest Membership Type
Latest Current Membership Type etc