I really have no idea. I never thought of that actually. But I am pretty sure that it is very hard for you to get the same address as someone else. Maybe I am wrong and this could be a huge problem.

yes this maybe not a problem, after some calculation I find that the thief has to generate on average 7*10^41 keys to make a successful theft
Thats very small likelihood, and even if collision ever happens sometimes, it should be empty previously used address or some dust Bitcoin amount. There are only about under million Bitcoin address worth non Dust amount, yet about 100 million Bitcoin address used already