Segun lo que dices:
"El tema es que el mail que reciben los usuarios se ve incompleto, por ejemplo algunas imágenes no se ven, aparecen símbolos de puntuación en vez de acentos, etc...)"
a mi modo de ver no tiene nada que ver ke el archivo file_html.html no se este cargando completamente...
..el asunto de los acentos.. quizas se deba a un problema de juego de caracteres... revisa que en el archivo file_html.html los caracteres con acentos NO esten kmo "á", sino que como &xacute; ..... o tambien le puedes agregar la sgte instruccion DESPUES de :
"$contents = fread ($fd, filesize ($filename));" ,
$contents=htmlentities($contents); <---hace justamente eso cambia los á por á (si mal no recuerdo)
.. en cuanto a las imagenes si no se ven es por:
1ro no esta bien la ruta...(OJO que tienen que ser del tipo :
http://www.miservidorpropiomio.com/imagenes/img_01.gif y no /imagenes/img_02.gif) (en otras palabras URL absolutas y no relativas al documento)
2do la Imagen no existe..
3ro No hay conexion a Internet (desde el cliente)
....salvo que incrustes las imagenes..(en
www.hotscripts.com hay varios script que hacen esto...yo baje uno y me ha funciona de las mil maravillas..^_^)
SaluDoS