allora, ho fatto un po' di test sul tuo codice: prima cosa, non capisco il controllo in gestione.php, gli chiedi di fare due cose diverse sotto la stessa condizione (probabilmente nella seconda hai solo dimenticato di togliere il "!" davanti alla variabile di sessione).
Per far funzionare il controllo devi dichiarare il session_start() in gestione.php, se lo dichiari anche nel form puoi fare il giro completo per vedere se mantiene la sessione. Dichiaralo anche in index.php e prova a stampare a video la variabile di sessione per vedere se viene mantenuta.
quando includi login.php, puoi anche non dichiarare il session_start, dato che è già presente in gestione.php e si trasferisce alla pagina inclusa.
nel login.php ci sono alcuni errori (ad esempio, alla variabile $pass_user_form manca il "$")
abilita la visualizzazione degli errori, se non l'hai già fatto.
PS: se posso, io non lo passerei il valore dello user in chiaro nella sessione...