Posso solo dirti (dopo qualche mese dal tuo post) che ho (edit:avevo) lo stesso problema. Mi perde la sessione, cioè all'apertura della nuova pagina cambia l'id di sessione e ovviamente le variabili impostate nell'altro id vanno inserabilmente perse. L'unica soluzione che ho trovato fino ad ora sarebbe quella di inviare alla pagina successiva l'id della sessione dove si sono registrate le variabili e forzare l'apertura (nella nuova pagina) dello stesso id di sessione.
Ovvimente però la cosa non è salutare perchè consente a terzi inserirsi con l'id di sessione di un altro.. cose già successe per esempio con certi tipi di webmail.

Non so come risolvere la situazione
Qualcuno ha qualche soluzione migliore??

EDIT: Ho risolto per me. Cmq il problema esiste, se ne trova traccia in php.net sui doc della funzione session_start.

Per me si è trattato di una cosa così banale che ho fatto veramente fatica ad accorgermi. Lavoro in locale ma ho anche un dominio sulla macchina. All'apertura del browser puntavo su localhost e li rimanevo finchè proprio la pagina che mi dava problemi con un link assoluto mi mandava sempre sulla mia macchina ma tramite il dominio. La cosa ovvimante faceva sballare il cookie della sessione che prima era impostato per localhost e sul nuovo dominio ovviamente non veniva comunicato. Lieto fine

Ciao a tutti!!