Si estás usando Apache, podrias crear un .htaccess que incluya las directivas
hay varias formas
Código Apache:
Ver originalAddDefaultCharset off
AddCharset utf-8 .txt
Código Apache:
Ver originalAddType 'text/html; charset=UTF-8' html
AddType 'text/plain; charset=UTF-8' txt
otra posibilidad es que renombre tus txt como html, a veces el Server pasa hedaers segun la extensión
Podés hacer otras pruebas como abrir el txt directamente en el navegador, y revisar los encabezados para el mismo.
Hacé igual para el php, para revisar los headers correctamente podés ayudarte con alguna extension del Firefox (yo uso Webdeveloper, que s compatible hasta FF 5)
Lo más probable es que al abrir el txt desde php, lo pase como iso-8859-1
Otra cosa que podria funcionar es agergar a tu php
Es cuestión de probar, no hay una forma universal porque estás dependiendo de configuraciones manejadas por el administrador de servidor
Saludos