Dunque in questa funzione devi chiudere il nodo precedente e salvare quello corrente:

this.click = function(id) {
e1 = document.getElementById(id + "-section");
e2 = document.getElementById(id);
if (e1.style.display == "none") {
e1.style.display = "";
e2.className = "section-open";
} else {
e1.style.display = "none";
e2.className = "section";
}
}

Questa funzione è scatenata sul nodo stesso dall'istruzione:
eval("document.getElementById('"+a.id+"').onclick = function() {"+
"self.click('"+nodes[i].id+"');"+
"}");


Ciao