リストのインスタンスが入れ替わってもよければ>>316で言ってるようにいったん別のリストに入れるか
filesPath = (from path in filesPath
 select new KeyValuePair<DateTime, string>(File.GetLastWriteTime(path), path) into pair
 orderby pair.Key
 select pair.Value).ToList();
みたいな風にしたほうがよさそうな気がする
比較関数中でファイルのAPI呼ぶのは効率悪そう