The city names geocoder that CartoDB offers uses data from GeoNames, which is using "New York City" for New York. This is why by using New York the one from the UK was appearing, as it's selected due to the amount of population.
We have done some changes with respect to the synonyms of the cities and now geocoding "New York" will give you the city in the state of New York, USA.
For other cities, I recommend you to select the column of the city and the column of the country in which it is. Of course, using the column of the region in which the city is (for example, the state) will give you the best accuracy.