How many Custom Post Types to register?

Personally I would structure it like a CPT for each Hotels, Attractions, Restaurants. Then a custom taxonomy that ties them together for instance “Places” with children like “Locations”, etc.

If the site has a lot of connected data it is a really good idea to sketch out the relationships on paper or using software like Visio so you can visually see how it all fits.