I am not much into ETH so unable to help you for ETH. However, I have used two factor authentication functionality for bitcoin wallet named Greenaddress. You can get the executable file from https://greenaddress.it/en/ . Install it like any other software and enable 2FA by clicking on the "settings" tab.
They offer 4 different types of 2FA for the security of your wallet. Email, Google Authentication, SMS and Call. Enable as per your requirement and enjoy the security. Once enabled, no transaction will go through without the authentication method you have chosen.
You can also try Metamask for your ETH transactions. However, I am not sure if they have 2FA option or not. You can install and test for yourself. Hope this helps!