Karakter seti tanımlıyor musunuz?
$mail->CharSet = "UTF-8";
Evet, sorun onunla alakalı değildi. PHP sürümünden kaynaklı preg_replace'nin kullanımından kaynaklı bir sorun varmış. preg_replace_callback ile denedim ancak tam kafamda oturtamadığım için sürümü değiştirerek düzeltebildim.