a residential proxy would be perfect for your virtual instances with a unique IP, because they offer actual IPs that are less likely to get flagged. A private residential proxy would be less expensive and provide the level of anonymity and distinctiveness for every instance.
Another option to consider is a private IP VPN, which can give you a static IP address across your instances. Of course, the decision as to the most efficient option relies heavily on your use case and purposes for the instances. If, on the other hand, you need each IP to perform as a true user, then residential proxies are the way to go.
Layering proxies, as you stated, can also be effective to an extent. You can further increase anonymity by utilizing a public VPN on your main desktop and connecting to private proxies on your VMs. Doing this will allow for additional levels of anonymity while keeping your main desktop protected.
If you need a solution that works, I recommend NodeMaven. I use it for a long time and I lowkey like it! They have different types of proxies, including residential ones, which would work perfectly for your need of dedicated IPs for your instances. You can access their services at https://nodemaven.com/proxies/residential-proxies/ and check if they suit your requirements (: