У меня была точно такая же проблема, также в Arch Linux с vsftp 3.0.3 (pkg rel 3). Оказалось, что в каталоге, вызывающем такое поведение, было слишком много файлов (2666). После удаления большинства из них листинг через ftp снова заработал.
Странно, да? 2666 кажутся не слишком большим количеством. Но больше я ничего не менял. Настройки vsftp остались прежними, а права доступа к файловой системе остались нетронутыми. Также имена файлов не содержали каких-либо странных символов (порядковые номера длиной до 21 символа).