Your answer needs some clarification as you have not mentioned the internal network other than to suggest Vlans.
QoS is somewhat fickle, but the reality is that most have an internal network generating more data than what the external network can handle. QoS in a Vlan is layer 2, whereas Diffserv (DSCP) is layer 3. You are correct that QoS is largely ignored once the packets have left the router as it would otherwise require an honor system where all observed some standard to tag the packets accordingly. Otherwise and unfortunately everyone would and will set all their packets to EF (expedited forwarding) thereby making all packets peer to one another once again.
The key however, is to determine the likelihood of your network generating more external traffic than your Internet connection can handle and if so, how you manage the LAN to insure that what needs to be prioritized can be. If you have a highly active GB network that does a lot of cloud work that feeds into a 100Mbs Internat connection with perhaps a VPN or two, then you may indeed need to implement QoS or even internal bandwidth shaping/throttling.
While you can implement QoS at almost all but dumb switch and inexpensive routers, they need to be told what to look for. They do nothing until such time as they see enough data coming in that it starts to reach the threshold of what you have told the devices their available bandwidth is. Only once they sense the threshold being reached do they start their QoS routines and examine the packets and prioritize same. And, while you may have a GB switches and the like, it may not be prudent to tell the switch that its bandwidth availability is 1GB if you have high traffic LANs as this then become a similar scenario to the idea of the Internet supporting QoS and everyone set to EF. This then place all the gate-keeping burden to the router. QoS is not a guarantee, it is a moderator that attempts to match the available resource (WAN) to the demand (LAN) and it will prioritize those packets that have been prioritized as much as it can, but it must still attempts to serve the other packets. As the congestion grows, the router will start to discard lower rated packets and if it continues, the higher rated ones will also be dropped. Simply put, it becomes overwhelmed and is no longer able to bring order to chaos, but it will keep trying.
I have a couple of sites using WISP with fairly low bandwidths as they can get Internet any other way and a couple can’t get phone service other than VoIP and cellular was too expensive. I have to use it so the voice is protected.