webpack или gatsby. последний используется для генерации статичных страниц но мне лично там нравится быстрый старт без диких настроек вебпака. вставил конфиг и полетел)
Если есть ключи то лучше обновлением. Мы как то раз ключи потеряли, пришлось выпускать приложение с новым пакетом. Потеряли немало клиентов так как они не смогли получить новые обновления
Самый простой способ подгрузка через ajax. При нажатии на меню отправляешь запрос на сервер, он возвращает тебе часть контента которую ты вставляешь вместо старого