RMI или JSF чем будет правильнее?
Мне кажется, Вы теплое с мягким перепутали. Вы понимаете, что такое JSF, и что такое RMI, для чего они нужны, и где их применяют? 
Про текст и JSF вроде понятно, про файлики и RMI вроде не понятно.
Советую сначала разобраться что такое web, как он работает, как клиент (браузер) общается с сервером. Как можно отправлять данные на сервер (формы). Как эти данные на сервере обрабатывать. А уже потом, когда разберетесь, можно размышлять про JSF и RMI.
Не поймите меня не правильно, я не хочу никак вас задеть, я лишь хочу задать верное направление вашего развития в этом вопросе.
технология RMI выдержит? практически любая технология выдержит, если выдержат Ваши аппаратные ресурсы. В основном это сеть и дисковая подсистема, но может быть и нагрузка на ОЗУ сервера приложений, т.к. многие технологии прежде чем сохранить файл на диск, загружают его байтовое представление в ОЗУ сервера. Насчёт "~1000 человек" - эта цифра ни о чём не говорит, в данном случае следует считать количество и размер загружаемых/скачиваемых файлов а не абстрактных пользователей.Как правильно реализовать?Если Вы используете спецификацию JSF для построения клиентской части, то логично использовать средства загрузки файлов, предоставляемые библиотеками/фреймворками, реализующими эту спецификацию - практически все они имеют компоненты загрузки файлов на сервер. Я рекомендую использовать PrimeFaces - это активно развивающийся, богатый компонентами фреймворк. У них есть несколько вариантов компонента загрузки файла(-ов) на сервер, начать можно с этого
Касательно RMI - он здесь вообще не к месту. JSF работает в браузере, используя протокол HTTP, поэтому и для загрузки файлов логично использовать тот же протокол.