Извините, если это тривиально или очевидно, но я не смог найти ответ, выполнив его.
Откуда взялось значение size в массиве $_FILES['name']? Не могли бы вы доверять его значению ($_FILES['name']['size']) или все еще проверить его с помощью функции filesize()?
Другими словами, необходимо ли проверять фактический размер файла функцией filesize, чтобы заметить, правильно ли он загружен?