I guess you have multiple issues together:
First of all you're connected via wifi to the network. This means that the router gives you an internal IP-address AND keeps a state-table for your sockets and network-address-translation (NAT) in memory. Due to the disconnection, the router drops this state-table. As your pc and the server are not aware of this, they keep sending packets to each other, but they are not valid anymore or do not arrive there destination. (Bad encapsulation error on the server)
Second is OpenVPN. As you are using a static key, there is no need to do a crypto-handshake and openvpn (client and server) keeps sending packets to each other, so the process will not notify if there's an error on the crypto-layer. After a while the socket on the ip-layer reaches a time-out and the process will restart and you can setup a connection again. This can take a serious amount of time.
Solutions:
The easy way: Correctly disconnect openvpn before disconnection from wifi
The "hard" way: Start using certificates where openvpn needs to renegotiate session-keys and set the --reneg-sec and --keepalive options to usefull values.
See the
manpage for more info on that.