É melhor escrever o arquivo como desejar apenas uma vez. Portanto, não, não leia o arquivo novamente, apenas crie-os corretamente da primeira vez.
DATA(string_of_all_lines) = concat_lines_of( sep = |\r\n| table = VALUE string_table(
( |primeira linha| )
( |segunda linha| ) ).
DATA(xstring_of_text_in_utf8) = cl_abap_codepage=>convert_to( string_of_all_lines ).
OPEN DATASET dsetpath IN BINARY MODE...
TRANSFER xstring TO dsetpath.
CLOSE DATASET dsetpath.
O resultado é um arquivo de texto em UTF-8, todas as linhas estão separadas por CRLF e a última linha do arquivo não é seguida por um CRLF.