1. Да, вам нужен файл package.json, сгенерировать его можно с помощью npm init (по ходу отвечая на вопросы)
2. Во втором видео на 52й секунде Илья устанавливает webpack "глобально":
npm i -g webpack
Поэтому у него хоть и нет в проекте папки node_modules - все корректно работает.
Дополнительно:
Если вы устанавливаете модули локально, создается папка node_modules, куда они собственно говоря и устанавливаются.
P.S. советую посмотреть его скринкаст по node.js, чтобы стало понятно, как node.js ищет пакет, в упрощенном случае: сначала локально, потом глобально (почему упрощенно? потому что, так же еще ищет сначала у вас по относительному пути с расширением .js, потом .json, потом локально тоже самое в node_modules, потом глобально... Может быть что-то еще упустил, в скринкасте по node.js это точно было)