This sounds very similar to the behavior which I observe with my Wireguard VPN server hosted on my Fritzbox.
Connections work 100% reliable when connecting other networks via Fritzbox or clients eg from my Android mobile device.
When connecting from LE on my Raspberry PI 3, the connection is reported to be established.
However, the connections is available only sporadically.
Using ping, I see that for 80% of the connection attempts, the connection is not available. Sometimes ping works after establishing the connection. But only for a limited time. After less than 5 minutes (exact timing is random) ping stops working, and never recovers afterwards.
Checking the connection on LE using "wg" command, the connection is reported as established, even though the connection obviously dropped.
gaeste:~ # wg
interface: wg0
public key: <edited - removed>
private key: (hidden)
listening port: <edited - removed>
peer: <edited - removed>
preshared key: (hidden)
endpoint: <edited - removed>
allowed ips: (none)
transfer: 444 B received, 1016 B sent
persistent keepalive: every 25 seconds
Display More
In the Fritzbox connection details the connection sometimes even gets a green checkmark.
However, in contrast to the working connections, the LE connection never receives a timestamp in the "last negotiation" column: