Perl has a built in formatter..see https://perldoc.perl.org/perlform.html
But for this I would need to know the data upfront. I want the table to be built according to the data. In spite of my examle the data of course, comes from a database and the column widths haveto adjust. That's what Text::Table does.
I also think that you will find that an email with the assumption that the user is using a fixed width font won't work well.
I know. An HTML alternative is sent as well.