Questa è un'ipotesi, ma se hai valori duplicati per FTE valore quindi non vi è alcuna garanzia in merito all'ordine in cui usciranno ogni volta che il codice viene eseguito. Probabilmente SQL Server sta cambiando il piano di query tra quando esegui un semplice SELECT e un SELECT con il WHERE criteri, facendo uscire un ordine diverso e ciò che stai vedendo.
Aggiungerei il PK alla fine del tuo ORDER BY solo per garantire che l'ordine sia sempre coerente.