ok, dato per assodati che il problema sta in questa riga:
$nodo=new HTML_TreeNodeXL($row["CATEGORIA"], "", $nodeProperties);

che mi crea sempre una variabile $nodo che va a sovrascrivere anche la precedente...avete idee per fare in modo che non si sovrascrivano?