Hi Charlie_C,
I was able to do some testing with a similar configuration and found an interesting discovery. When initially creating a restrictive "RDP-only" Group Policy within the Meraki Dashboard, I too was having issues with RDP disconnects within minutes of the connection being established.
After further investigation, it appeared that the AnyConnect tunnel was still in tact and didn't seem to have been affected (confirmed from the AnyConnect end-client stats as well as performing auxiliary ICMP tests over the tunnel to the destination subnet).
After doing some Googling, I stumbled upon the following Reddit thread where a user was running into the same issue using an OpenVPN client and a poster responded with suggesting to disable UDP 3389 communication and once I modified my "RDP-only" Group Policy within Dashboard to only allow TCP 3389, the issues appear to have gone away (successfully tested over a three-hour period without any RDP disconnects). It seems as if the Microsoft UDP 3389 RDP bug might be more susceptible over client VPN connections? The poster on the Reddit thread did suggest disabling this through GPO but in my case, simply denying this traffic through the Group Policy in Dashboard seemed to do the trick.
Reddit Thread: https://www.reddit.com/r/sysadmin/comments/e2bhn1/rdp_disconnects_every_5min1hour_over_vpn/
Also, here is what my resulting test Group Policy looks like:
The AnyConnect configuration is set up as split-tunnel, with only the RDP subnet (...30.0/24) as an included route.
I am also thinking that this explains why we saw the AnyConnect client as show up as grey/inactive after a little while since given the highly specific nature of the AnyConnect connection (split-tunnel + only rules allowing RDP, which stopped working) the MX was marking the clients as offline as a result of not seeing any traffic pass through for several minutes. I'll post a blurb from our "Clients Usage Page Overview" KB below:
"Clients appearing on the Clients usage page will display their current status to indicate if they are currently active, as seen below in Figure 1. The activity threshold for a client is one minute. If a client does not pass traffic for longer than one minute, then the client will no longer be considered active. The status icon for an inactive client will appear grey."
I hope that this helps a bit!
If you found this post helpful, please give it kudos. If my answer solved your problem, click "accept as solution" so that others can benefit from it.