I don't think that duplicate wallet address is virtually possible.
Its impossible.
I think everything is taken care by blockchain itself.
No, if anyone else should ever gain access to your private key(s). Your coins are gone. Its just so unlikely that this happens by chance (or brute force) that we can reasonably call it impossible. There are no defenses against that in the code though.
However, you can use your email address instead of giving away your wallet id if you are holding account with coinbase. It will save your from your money being stolen.
Unless, its coinbase that is stealing your coins. If you do not hold the private key, you have no bitcoin. All you have is a promise from some company you probably know less about than the store around the corner you get your food from.