The problem appears to be an incomplete UTF-8 implementation. The LANG spec is for en_US - which doesn't have the extended characters (hence the "?arlija?aplina" - the locale doesn't know how to display the specific character, hence the "?" instead. The actual correct character should be in the file name, just not recognized on output).
You should be able to see what the original bytes are using a "ls --show-control-chars" which should show numeric values for the unknown characters. You should be able to then match these numbers against the UTF8 set to see what they should be.
Since you are using FTP to copy the files there are several places the language context may be mismatched - on the server, and on the client. Since the files are transferred the names SHOULD contain the same as the original bytes for the file name. There can also be issues with Apache not handling the encoding properly.
I like the search entry provided by http://unicode-table.com/en/
for a quick lookup.