Perfect, sorting BOTH fields solves the issue.
(Before posting, I had tried sorting but only languages field. And I needed sorting #original_language too, because the database sorting thing you've just explained).
I've used a slight variant to your code:
Code:
{#original:'strcmp(list_sort(field('#original_language'),0,','),list_sort(language_strings(field('languages'),0),0,','), 'No', 'Yes', 'No')'}
I suppose that if I sorted
before calling language_strings, I would get "Spanish, Latin" because of "esp, lat", which wouldn't match the alphabetically sorted "Latin, Spanish".