Essa confusão ocorre principalmente com os brasileiros.
Nós usamos o verbo TER no sentido de existir:
Tem muita gente no aeroporto. (na verdade, queremos dizer que existe, que há muita gente no aeroporto).
Esta frase em inglês seria: THERE ARE a lot of people at the airport. (no plural, porque "people" é plural)
Veja mais um exemplo:
Tem muitas casas bonitas na praia = There are a lot of beautiful houses at the beach. (há, existem)
Eu tenho uma casa bonita na praia = I have a beautiful house at the beach. (eu possuo)
Então, na próxima vez que for perguntar se "tem um bom restaurante por perto", por favor não use o verbo "have". Use o verbo "there be" conjugado.