fgetcsv () descarta caracteres com sinais diacríticos (ou seja, não ASCII) - como corrigir?

Perguntas semelhantes:
Alguns caracteres no arquivo CSV não são lidos durante o PHP fgetcsv () ,
fgetcsv () ignora caracteres especiais quando eles estão no início da linha

Meu aplicativo possui um formulário no qual os usuários podem fazer upload de um arquivo CSV (seus 5 usuários internos sempre carregam um arquivo válido - delimitado por vírgula, entre aspas, registros terminados por LF) e o arquivo é importado para um banco de dados usando PHP:

$fhandle = fopen($uploaded_file,'r');
while($row = fgetcsv($fhandle, 0, ',', '"', '\\')) {
    print_r($row);
    // further code not relevant as the data is already corrupt at this point
}

Por motivos que não posso alterar, os usuários estão carregando o arquivo codificado noWindows-1250 charset - uma codificação de caracteres de 8 bits e byte único.

O problema: ealguns (nem todos!) caracteres além de 127 ("ASCII estendido") são descartados emfgetcsv(). Dados de exemplo:

"15","Ústav"
"420","Špičák"
"7","Tmaň"

torna-se

Array (
  0 => 15
  1 => "stav"
)
Array (
  0 => 420
  1 => "pičák"
)
Array (
  0 => 7
  1 => "Tma"
)

(Observe queč é mantido, masÚ caiu)

A documentação parafgetcsv diz que "desde 4.3.5 o fgetcsv () agora é binário seguro", mas parece que não é. Estou fazendo algo errado ou esta função está quebrada e devo procurar uma maneira diferente de analisar o CSV?