La función nativa de PHP para enviar e-mail (mail()) tan sólo te indicará si consiguió entregar el e-mail al MTA (transportador: servidor SMTP o el que se use ..) pero sólo devuelve un "true/false" si consiguió hacer esta operación o no exitosamente.
Para tener algo más de control sobre el error deberías conectar directamente al servidor SMTP para entregar el e-mail directamente .. así podrías obtener algún código de error más claro.
Puedes usar classes para envio de e-mail por SMTP directo (sin usar mail() de PHP) como por ejemplo:
PHP Mailer
http://phpmailer.sourceforge.net
(además de controlar mejor los mensajes de error en el envio permite enviar datos adjuntos comodamente . .e-mail multiparte en HTML y/o texto simultánemente .. usar servidores SMTP que requieran autentificación .. etc.)
Un saludo,