Если вы ищете «лучшее решение», воспользуйтесь другой библиотекой электронной почты с открытым исходным кодом, которая делает то же самое, что и вы.Самостоятельное ведение рендера электронной почты, защищенного от внедрения скриптов и других хаков, будет просто слишком большой работой для одного человека.
Один пример: https://github.com/afterlogic/webmail-lite
Другой: http://trac.roundcube.net/
Вы получаете преимущество от других разработчиков, которые используют библиотеку, поддерживающую базу кода, поэтому, если что-то не работает, все, что вам нужно сделать, это загрузить последнее обновление (надеюсь) и вы получите исправление.Если вы найдете что-то, что нуждается в улучшении, вы можете это исправить или собрать, и сделать код лучше для всех.Я просто представляю здесь библиотеки с открытым исходным кодом, однако в любом коммерческом контексте создание собственного средства визуализации электронной почты без большой команды - плохая идея.