Hello,
if you want all the resources to be in their own subnet but allow communication you can use private endpoints to specific resources.
Another technique you may consider using is vnet peering as described here : https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-peering-overview
so that all the traffic will still go over Microsoft’s private network only, but you can access the resources as if they where part of the same network.