Yes, it is usually OK to speak of cities, etc. using "их". But in case of answering a question it depends on the form of that question. In your second example, the question doesn't include the word "города" (e.g. "такие города как"), to which "их" in the answer would refer. So an extended answer (as opposed to "нет, не знаю") to that question should use something like "этих городов" as you wrote in brackets, rather than "их". However, in case there IS "города" in the question, you can surely use "их" in the answer:
— Ты знаешь города Лондон и Нью-Йорк? — Нет, я их не знаю.
("их" refers to "города", not to city names)
— Ты знаешь такие города как Лондон и Нью-Йорк?
— Нет, таких не знаю. (— Нет, я их не знаю.)
— Ты знаешь Лондон и Нью-Йорк? — Нет, этих городов я не знаю.
(The short form: Нет, не знаю.)
So, generally you need some additional context to perfectly use "их" when speaking of city names: that pronoun typically replaces 'cities', not their names.
Of course, you could also say Я эти не знаю.
No, I'd say only "Я эти города не знаю". Omitting noun here is quite problematic.