Как сказал schnalle, одна из проблем, безусловно, заключается в том, что сервер smtp, который вы используете для отправки электронной почты, и тот, который вы указываете как От, отличается ... Домен from должен быть таким же, как сервер, на котором вы работаете.
Итак, вы можете использовать сервер Yahoo для отправки электронной почты (проверьте, разрешают ли они удаленное SMTP-соединение, но я полагаю, что они это делают), подключаясь по SMTP, и это решит 1 проблему.
Еще одним является html-содержимое без альтернативного простого текстового содержимого, но это менее важно.
Я предлагаю вам phpMailer , бесплатный PHP-класс с открытым исходным кодом для простой отправки по электронной почте (я использую это событие для отправки почты через сервер Gmail)