Facet API and Entity Reference Autocomplete
If you are using the Search API Solr with the Facet API, you can create a search index view and use the Facetapi Multiselect along with Chosen to allow your users to select the city via a user friendly drop down box (chosen not only supports typing the search term, but it also allows fuzzy matching). Even if the content type city is not indexed in Apache solr, you can create a relationship in your search view and make the city available to FacetAPI system. You can even expose the city as a filter (if you do not want to mess with facets at all) to your users with a views' relationship.