I do something similar with opnsense and policy based routing. opnsense is acting as both a VPN client and server. The client interface connects out to a commercial VPN, and the server interface listens for incoming connections. Based on what I I want to accomplish I setup firewall rules that use policy based routing to route incoming VPN traffic where it needs to go.
Regarding split tunnel on the client, the Android wireguard app has the option to specify what traffic uses the tunnel based on the application
For those who don’t know much about him, I recommend watching the movie Revolution OS. It does a good job showing what he was working towards.