in realtà .live() permette di agganciare una funzione anche ad elementi che non sono presenti in pagina al momento in cui viene effettuato il binding (ad esempio se aggiungi altri elementi a seguito di una chiamata ajax)

When you bind a "live" event it will bind to all current and future elements on the page (using event delegation). For example if you bound a live click to all "li" elements on the page then added another li at a later time - that click event would continue to work for the new element (this is not the case with bind which must be re-bound on all new elements).
il metodo funziona sono incidentalmente (perchè così è stato sviluppato per questa versione)
e perchè hai cambiato gli elementi a cui associ l'evento (prima avevi agganciato degli[*], adesso hai gestito i link <a>)

Live events do not bubble in the traditional manner and cannot be stopped using stopPropagation or stopImmediatePropagation.
per cui usa anche .bind() sugli[*] però devi fermare la propagazione dell'evento

codice:
$(".fold").bind("click", function(ev){

   // quello che devi fare...

   ev.stopPropagation();
 });
edit: ho letto dopo il tuo ultimo post. Facendo chiamate ajax va bene il metodo .live()