I have been through this earlier, and I spent a huge amount of time diagnosing sorting and what might be happening in a certain language. This was covered in this post:
sort may not be 100% consistent in Chinese, but that's because your system is inconsistent. For the file sorting, we use localeCompare() and it does not get any more correct than that. I don't know about mixed character sets on Chinese OS+server+browser, but I can't fix it if the implementation is correct.
For menu sorting, of course there are only options to sort by NAME or DATE. Date is easy of course, and for sorting by name, we use PHP natcasesort(). This is how your server believes they should be sorted, and if it's wrong (because of mixed chars or wrong encoding), that is not Files app's fault. This is the correct way to sort strings from PHP.
Basically, it's done correctly, so I'm not sure what else I can do.