I believe there are two possible problems from your side
- Timer: the timer on your phone is not match with timer on exchanges.
- Your backup codes were written down inaccurately.
There is nothing to know your backup codes were backed up correct or inaccurately. You can test your timer by creating a new account, set up 2FA and see does the code on your phone (with a fresh 2FA code) can be acccepted or not?
If the fresh one is accepted, it means your backups have something wrong.