Ich habe schon mit verschiedensten VPN's (Cisco, HOB, OpenVPN, WindowsVPN) genau die selben Probleme.
Manchmal hilft ein kleines VBS, dass z.B. jede Minute einen SQL losschickt, damit die VPN offen bleibt.
Manche VPN's haben halt Timeouts, wenn innerhalb einer Zeit kein Transfer stattfindet, dann wird die VPN getrennt.
Wobei durchaus auch "echte" Transfers geprüft werden, ein Ping oder Keepalive diesbezüglich ignoriert wird.

Das Wiederverbinden der VPN mit den selben Client-Ports klappt da eher selten.
Wenn die AS/400 dann noch eine Unterbrechung feststellt, werden auch die dortigen QZDA-Jobs getrennt.
Da hilft mitunter auch kein automatischer Reconnect des ConnectionPools (neue SQL-Sitzung), da bestimmte sitzungspezifische Einstellungen (APP-Initialisierungen mit diversen Info's in der QTEMP) nicht automatisch wieder da sind.

Sicherlich mag das auch als Design-Fehler gelten, aber die QTEMP bietet sich nun mal an, um das "Aufräumen" zu vereinfachen.