Si quieres un control de sesiones mucho más avanzado de lo que PHP presta por defecto .. usa:
ADOdb
http://phplens.com/lens/adodb/docs-session.htm
Si vas a continuar con el uso de sesiones clásico de PHP, no sé si quieres aumentar ese tiempo de vida de una sesión ... (
www.php.net/session)
Sobre el tema que comentas, se trataría de que -antes- de que valides tus sesiones y actue tu código de validación .. registres los datos que ivas a ingresar a tus BBDD pero con algún "estado" o flag que indique que los datos deben ser tomados no como defnitivos .. así le obligas a tu usuario a autentificarse denuevo y por otro lado muestras los registros que estén en ese estado ("no definitivo") para que validen que se haga definitivo (cambiar el flag de estado) o bien siguiendo el flujo de la aplicación, una vez autentificado cambiar automáticamente ese "flag".
Un saludo,