But according to the manual, reading out some text with "file_str_read" is limited to 4000 characters in a STRING
Where did you find this? I quick looked through the manual, but couldn't find it. Have you seen an example made by txesmi?

Best regards!
Edit: the only thing I found was this:
Strings have some limitations in C-Script: they have a maximum length of 10000 characters, and the original length can't be changed. There are no such limits in lite-C.