Bhe, nel tuo codice ci sono un bel po' di cose da vedere.

In primo luogo devi abilitare i notice: i notice non sono errori ma delle imperfezioni del codice. Se li abilitassi (cerca nel forum per vedere come fare) vedresti che al primo caricamento le variabili non sono impostate (come è giusto che sia!). Ora non ti servono granchè ma più in là, con script più complessi, potrebbero risparmiarti molte ore di esaurimento alla ricerca di errori stupidissimi e come tali quasi impossibili da trovare (soprattutto su grandi listati!).

Cmq a me al passaggio 2 ci arriva, mentre non arriva al terzo (mi fa rivedere il primo step, quello che viene visualizzato se non sono impostate le vars) per un motivo molto molto semplice legato all'html e non al php: hai scritto questo

Codice PHP:
//====  PASSAGGIO N° [2]: Verifica dei dati inseriti ========//
if ( isset( $invia ) ) {   echo "<html><head><title>[2] == Controlla i dati</title></head>
                        <body>
                        2).
Ciao, 
$nome $cognome!

                        <form action=\"
$_SERVER[PHP_SELF]\" method=\"POST\">
                        <input type=\"reset\" value=\"Cambia i dati\" onclick=\"java-script:history.back()\">
                        <input type=\"submit\" value=\"INSERISCI!\" name\"insert\">
                        </form>
                        </body>
                        </html>"
;
                } 
Nel dettaglio qui sta l'errore:
codice:
<input type=\"submit\" value=\"INSERISCI!\" name\"insert\">
Semplicemente manca un "=".

PS
Complimenti per lo stile, mi piace moltissimo!