I prefer to keep my 2FA in the cloud in case I lose my devices (i don't keep funds under those 2FA accounts, just a lot of accounts with basically zero balance).
What is your opinion on making monthly/weekly/daily backups of your 2FA to your windows machine (or to any other machine of your liking?). If you would be open to this idea may I suggest the following:
- 2FA application: Either Aegis Authenticator[1] or andOTP[2] - both of them are free and open source applications. There was a discussion on HackerNews[3] about Aegis where the top comments ended up comparing it to andOTP (which has been alive for more time than Aegis). Both of them also allow you to export an encrypted .json file that could be imported in the respective app (or others) in the event of you losing your device.
- Sync application: My recommendation would be to use Syncthing - a free and open source application - which, according to their website, is "a continuous file synchronization program. It synchronizes files between two or more computers in real time, safely protected from prying eyes."
What I choose to do is whenever I add a new 2FA service I export my new updated (and encrypted) .json file generated to at least 3 new locations so that I can ensure there's enough copies kept in the unlikely event of losing access to (for example) 2 of those locations. This, of course, makes me run this procedure everything I add a new 2FA code but I think that the gains that I have of such action totally outperform the risks that I may incur. I'm not sure but I think you could automate this process by exploring the features that Syncthing offers as well...
[1]
https://github.com/beemdevelopment/Aegis[2]
https://github.com/andOTP/andOTP[3]
https://news.ycombinator.com/item?id=25803996[4]
https://syncthing.net/