I would recommend reading the forum posts where this stuff has been gone over pretty extensively, lots of good ideas and strategies.
I would recommend in your existing setup that you move your control panel out to its own server at provider 2. And in the proposed 'better' setup I would recommend moving the control panel and backup servers to provider 2. The reason is to add redundancy in case either datacenter has issues. In both proposed setups if provider 1 goes down then your whole operation is dead and unrecoverable.
Here's what I'm running and the rationale:
Provider 1:
Control panel VPS, also has email role solely to be used for phpmail (I don't run any mailbox services).
Provider 2:
Multiple app/db servers for hosting.
1 unused "standby" server.
Provider 3:
Backup server.
In January: Secondary control panel on a VPS.
I didn't mention the DNS servers because they don't really matter very much, as long as you have one at one datacenter and on at another datacenter, it's good. You can even make a 3rd/4th tertiary DNS servers if you're actually using your own DNS (I have the DNS servers setup, but don't use them, I'm 100% Cloudflare).
The rationale for having the backup server away from provider 2 is because if my DC that hosts all my hosting servers goes out (network problems, fire, etc) then I can redeploy to provider 3 no problem. Provider 3 has instant-deploy dedicated servers available that would be suitable replacements for my main servers at provider 2.
I wouldn't need a provider 3 if provider 1 had instant deploy dedis, but they don't, so I don't use them, a 2 datacenter setup is fine if you can find 2 providers that can meet all your needs (for me, provider 2 doesn't do VPS, but they have badass dedis and fast network and good price, so I work around it by using 3 providers).
It's important that the control panel server be on VPS so you can get block level snapshots that can be easily restored to a new VPS in a disaster situation, as enhance currently has no method of restoring your control panel server if it takes a shit. In January we should get the capability to have a secondary server with capability to become the master control panel, then it will be safer for disaster recovery - until then, make sure your provider has hella good snapshot/backups for VPS or you could get mega screwed.
I have the "standby" server sitting idle ready to go for disaster recovery at provider 2. It's meant to hasten recovery in a server disaster event. It might take the DC staff 2-10 hours to fix a hardware issue depending on factors, which isn't really acceptable for my business, so we have the standby server ready to be used as the replacement server of one of the main rigs takes a shit. Since it's already provisioned and ready to go all it takes is the time to transfer sites from the backup server to the standby server - enhance handles the DNS changes automatically so it's a really seamless process. I'm guessing restoring one of my servers with 700gb of data is only going to take maybe 30-45 mins, much better than our 3 hour recovery time on cpanel servers.
The backup server is a dedicated server with 16 cores on a 10Gbps port and has NVMe drives, so there's no bottleneck coming from pulling backups. In a disaster situation every minute counts, so if you can invest in anything to hasten the process, it's well worth it when SHTF. That's why the standby server sits idle, it's a huge cost hundreds $/month to sit there unused, but during disaster recovery it can shave at least 20 minutes off recovery time just from not having to buy a new server, wait for it to be provisioned, login and install enhance on it, copy our optimized config to it, THEN pull backups to it - see we skip a lot of steps by already having it ready to go. Disaster recovery 101.
Backups are run every 3 hours, so they're very fresh. This is to minimize customer data loss. In your setup it sounds like your customers could lose 7 days of data in a recovery scenario, not really great if any of your clients regularly work on their sites (like a blogger or something). My clients would be devasted to lose a week of work, so having it set to 3 hours is great, that's hardly any lost data at all.
And of course the last and maybe most important things is = have a disaster recovery plan in place. Read all the enhance docs, read all the forum posts, get WELL acquainted with it. You don't want to be chasing your ass with a dead server at 3am frantically reading the docs site trying to figure out how tf enhance recovery works or what to do. If a server takes a shit, you should already know exactly what steps you're going to take to diagnose the issue, notify staff, notify customers, begin recovery procedures depending on results of diagnosis. I can't stress this enough, educate yourself to protect yourself. Your future self will thank you.