Да, запятая перед тире поставлена правильно. Для каждого из знаков здесь есть свои основания.
Языковых ошибок нет. Указание на местоположение вызывает вопросы, но с ними лучше обратиться к историкам и географам. Сейчас Черкесск — столица Карачаево-Черкесской Республики, но раньше этот город входил в Карачаево-Черкесский автономный округ Ставропольского края. Саров расположен в административных границах Нижегородской области.
В паспорте написано правильно. См. «Письмовник».
Допустимы варианты: агора и агора (некоторые словари отдают предпочтение первому варианту, некоторые – второму). Вариант агора невозможен.
См. «Учебник ГРАМОТЫ». Правило касается корней гор-гар со значением, связанным с горением.
Подобные сложные наименования, как правило, остаются несклоняемыми. Только некоторые (наиболее известные) топонимы такого типа подчиняются общему правилу: в пишущихся через дефис иноязычных топонимах склоняется только последний компонент. Вот примеры из «Словаря собственных имен русского языка» Ф. Л. Агеенко:
Аньер-сюр-Сен, Аньер-сюр-Сена [сэ] (гор., Франция)
Витри-сюр-Сен [сэ], нескл. (гор., Франция)
Шалон-сюр-Сон, нескл. (гор., Франция)
Камаре-сюр-Мер [рэ, мэ], нескл. (гор., Франция)
Рошфор-сюр-Мер [мэ], нескл. (Рошфор) (гор., Франция)
Трувиль-сюр-Мер, Трувиль-сюр-Мера [мэ] (Трувиль) (гор., Франция)
Конде-сюр-Нуаро [дэ], нескл. (Конде) (гор., Франция)
Общая рекомендация может быть такой: если название малоизвестное и не зафиксированное в словарях, лучше не изменять его по падежам.
Лучше: из городов. В остальном все верно.