Det ser ud til, at du ændrer $link-variablen inde i foreach-løkken, så du tilføjer item1 til $link, går gennem dets underpunkter og vender tilbage til den første iteration og tilføjer item2 til variablen...
erstatte denne
$link .= "/".$category['url_nl'];
med
$insidelink = $link . "/".$category['url_nl'];
(og skift resterende $link inde i løkken til $insidelink)
Tilføjelse:Dette gælder også for $startingLevel. Rediger det ikke, brug +1 inline:
echo "<li>".$start." - ".$startingLevel +1.
"<a href='$link'>{$category['menu_nl']}</a> ($link)</li>\n";