The mailer infrastructure can already deal with MimeMessage mails to add attachments to emails. This should be extended to support sending of HTML emails.
To simplify things, the body of the email is considered to be HTML. For the text-only version of the email, the HTML markup is removed. br and p tags should generate a line break. li tags should generate a ascii bullet list.
If this approach is not feasible, separate body elements are required one for HTML one for non-HTML output.
The mail content should be wrapped in a HTML template which adds the header, footer and style of the email.