Here's my attempt at emulating the router logic you've outlined and the failure report. I thought it too WireGuard-specific for this thread, but you're more than welcome to take a look at
my SuperUser post.
All you've done w/ that post is describe your WG client configuration, which is beside the point.
I don't care if the Ubuntu device is hosting a WG client, OpenVPN client, or no VPN client at all. The point I'm trying to make is that the Ubuntu device should be configured like any other device on the primary local network, w/ a default gateway and DNS servers. Then you also configure the Ubuntu device as a *router* (i.e., enable IP forwarding). At that point, for any device you want routed via the Ubuntu device, you simply change its default gateway to point to the local IP of the Ubuntu device. If there is NO VPN active, those clients will be routed through the Ubuntu device and up to the WAN of the primary router (admittedly, not particularly useful, but I'm trying to make a point about what's happening w/ this configuration). However, if you *do* have an active VPN client on the Ubuntu device, those clients can instead be routed through the VPN.
It's just that simple. The Ubuntu device is being configured like any other router, including the primary router. There is no difference. There's no need for additional local IP networks w/ the Ubuntu device. Clients that need to be routed through the VPN client simply make the Ubuntu server their default gateway. Those that don't will continue to be routed directly through the primary router.
Perhaps you're getting confused by the fact the Ubuntu device manages access to its local IP network, the WAN, and VPN via one and only one ethernet port, specifically the LAN port for 192.168.50.x (the other two ethernet ports are useless, at least for these purposes).