Второй скрипт для дочернего меню написан криво.
headerSubmenuItem.forEach((item) => {
document.addEventListener("click", function (e) {
});
});
Слушатель вешается на весь документ, очевидно, используется делегация. Но при этом слушатель вызывается энное количество раз, по количеству сабитемов.
Я бы переписал, вынеся document.addEventListener на верхний уровень, и поиск необходимых элементов выполнял бы уже внутри этого обработчика. Тогда будет неважно, когда меню появится на странице, клонировано оно, или нет.