Hola,
Solo un detalle. Creo que el valor de filename del Content-disposition debe ser solo el nombre del fichero, no la ruta completa, que es lo que necesitan tanto filesize() como fopen(). Se podria usar l afuncion basename() (
www.php.net/basename) para extraer el nombre del fichero del parametro $nombreFichero.
Saludos.