Cita: Si no ponés encabezados el email se envia igual.
Se envia, más no "se envia igual" y menos se ve igual...
Las cabeceras HTTP no son exclusivas de la función mail()... menos de PHP, el tema esta desde cómo trabaja la WEB misma.
En resumen --excesivo--, las "cabeceras esas" es información que es entregada al cliente y le servirán para saber (e interpretar) correctamente el contenido entregado, en este caso el cuerpo del correo.
Concretamente las cabeceras que mencionas informan que estas enviando HTML (si no la incluyeras se vería en texto plano, el HTML no sería interpretado), que "esta escrito" --utiliza-- un juego de carácteres
iso-8859-1 (¿latinos?; incluye vocales acentuadas, ñ y Ñ. Quizá debas utilizat UTF-8) y que deberá responderse a "$email" (lo que lo sustituya)...
Cita: REQUEST levanta las variables que están en POST Y GET
No solo de "POST y GET"... lo que hace es recibir (ó acceder por medio de ella) a información enviada sin importar el "medio": POST, GET ó COOKIES (Ignoro si también con FILES
), es una manera "general" y por tanto puede (no necesariamente) representar un problema de seguridad.