A mi me paso algo parecido una vez... sino me equivoco con solo cambiar esto:
Código PHP:
if ($enviar) {
por
Código PHP:
if ($_POST['enviar']) {
va a ayudar a que tu script sea mas seguro y para que no puedan usarlo mandar spam externamente.
Lo ideal seria que cambies todas las variables por sus correspondientes globales ($algo -> $_POST['algo']) pero en su momento a mi con solo cambiar la variable con la que decidia si mandaba el maail o no me sirvio para dejar de recibir spam desde mi script.