It doesn't appear that the Microsoft 365 Mail API has the ability to use templates. Fusion apps/modules are limited to the capabilities of their respective APIs.
You are right that using HTML is a good solution, just be sure to select HTML as the content type.
Adding an attachment just requires you to provide a name and map Data which is the file itself.

There are many ways to get a file into a scenario. The Onedrive app would work. You could also use Watch messages to get messages from a source and get their attachments from the output of that module. It just depends on your use case.