У меня 24196 файла в не очень большом проекте. Но два часа — это что-то очень-очень неправильно. 10 минут от силы на медленном коннекте (экзотику типа Вьетнама-Таиланда-гостиницы в Вышнем Волочке не берем) на скачивание.
Ставить под юзером.
Ставить ли на прод — зависит, как решите. Можно коммитить в гит собранные файлы, тогда не надо. Или не коммитить, тогда надо. Третий вариант — билдить в отдельную папку, которую потом деплоить на прод.
Все вышесказанное относится к чистому NPM. Что такое Laravel Elixir и что он делает, я не знаю.