It would be great if someone with more knowledge in this field could provide a better solution for this issue.
Edit: Also you could reset password on your e-mail account if was breached.
Edit 2: There are also push notifications sent on mobile apps which acts like boolean type to accept or deny logon process.
Edit 3: If MITM is also laid down in discussion about possible threats then I think end-to-end encryption may help.
Edit 4: Banks usually use "Fill 3, 4, 15, 22.. character from your [placeholder: password, auth card]" method to get rid of key-loggers on clients PCs.