Lo único que hice es controlar todos tus "echos" y almacenarlos en una cadena de texto, que es lo que se regresa con el "return" así lo puedes enviar por correo.
Es algo similar a esto:
Código PHP:
$algo = "";
$algo .= "texto";
return $algo;
// es igual a:
ob_start();
echo "texto";
return ob_get_clean();
Saludos.