Изглежда, че променяте променливата $link вътре в цикъла foreach, така че добавяте item1 към $link, преминавате през неговите поделементи и се връщате към първата итерация и добавяте item2 към променливата...
заменете това
$link .= "/".$category['url_nl'];
с
$insidelink = $link . "/".$category['url_nl'];
(и променете оставащата $link вътре в цикъла на $insidelink)
Добавяне:Това важи и за $startingLevel. Не го променяйте, използвайте +1 inline:
echo "<li>".$start." - ".$startingLevel +1.
"<a href='$link'>{$category['menu_nl']}</a> ($link)</li>\n";