Las cabeceras HTTP que menciono serian "lanzadas" desde PHP hacia el navegador .. y a su vez PHP leerá el archivo del servidor para entregarlo al buffer de salida (con las cabeceras HTTP modificadas).
Un ejemplo tienes en las FAQ's de este foro ("descargas con opción resume" o algo así se llama la FAQ):
Y otro ejemplo más simple:
http://www.forosdelweb.com/showthrea...hreadid=115977
NOTA: .. que funcione como esperas (descargue el archivo y no lo intente interpretar el navegador) depende de las cabeceras empleadas de content-type y similares... No todo navegador se comporta igual ante las mismas cabeceras.
Un saludo,