Я говорил об этом:
<ul style="columns: 2">
<li>li 1</li>
<li>li 2</li>
<li>li 3</li>
<li>li 4</li>
<li>li 5</li>
<li>li 6</li>
<li>li 7</li>
<li>li 8</li>
<li>li 9</li>
<li>li 10</li>
<li>li 11</li>
<li>li 12</li>
</ul>
Т.е. сделать просто один ul и не мучать мозги.
И даже если таки нужно два блока - программно распределение нужно делать на сервере, а не на клиенте.
По твоему коду - он должен работать, если написать правильно:
for(let i = $('ul li').length; i < $('ul2 li').length; i++) {
$('ul2 li')[i].hide();
}
Откуда там взялся .nav-list p непонятно.