ciao,

non ti assicuro niente ma tra le altre variabili prova a metterli anche queste

$messaggio1= 'MIME-Version: 1.0\r\n';
$messaggio2= 'Content-type: text/html; charset=iso-8859-1\r\n';

probabilmente il tuo messaggio d'errore puo dipendere che non specifichi come il programma di posta deve decodificare i dati che gli invii
di sicuro aggiungi queste due righe poi vedi