Hi,
let's put things in order.
if you want to work as "legacy", you can set two default routes with different priorities and monitoring as you said, For VPN configure the Link selection with HA. and you good to go.
Legacy, because for internet traffic you will have a failover only once the 'IP Reachability detection' monitored target is DOWN or once your DG will stop responding to ping, and you can work only in Active/Standby mode by this.
if you want to get little more advanced method, you can use ISP Redundancy which provide you the ability to use Load Sharing between the lines for outbound internet, with a couple more features.
and if you want to get the best out of your multiple lines you can consider Quantum SD-WAN, in which you can benefit from specific steering abilities Per app/DSCP/User/updatable object, etc. advanced SLA configurations, application steering, (soon - Application level QOS), different custom NAT Per ISP configured in a user friendly way. seamless failover in VPN Traffic to another SD-WAN enabled Gateways, and much more.
For any method you choose, 'Hide behind GW' should work.
if you need custom Hide to Static NAT Per ISP, you can implement it via ISP Redundancy (not very user friendly way), or via the Quantum SD-WAN Rules in Infinity portal.