Es que ya le diste salida al navegador (el HTML del comienzo).... después de eso ya no puedes seguir enviando cabeceras (función header() o setcookie(), etc).
Si te das cuenta, en este caso es totalmente innecesario ese html porque nunca se mostrará.
Este script recibe datos, los procesa y redirecciona a una página que quieres mostrar... entonces para qué ponerle HTML???
Es el típico código generado por el dreamweaver o similares.
Para solucionarlo, simplemente quita todo lo que esté antes de "<?" (que, por cierto, debería ser "<?php") y también todo lo que esté después de "?>".
Saludos