Во-первых, это неудобно, зачем 2 раза устанавливать один и тот же пакет.
Если npm может выбрать версию которая одновременно подойдёт и для проекта и для пакета, то зависимость будет установлена только один раз.
если зависимость #2 внутри #1 обновится, мне также придется ее обновлять во избежание конфликтов версий
в проекте ^2.3.4, в зависимости стало ^2.4.0, npm установит 2.4.0 потому что она подходит под оба условия, в проекте версию можно не трогать. Обновлять нужно будет только мажорные версии потому что они предполагают breaking changes.
Вопрос: зачем?
Вы не контролируете состав зависимостей в пакете, поэтому нет гарантии что эта вложенная зависимость там останется даже после обновления минорной версии, а если она пропадёт то импорт из node_modules выдаст ошибку.