Географическое название, употребленное с родовыми наименованиями город, село, деревня, хутор, река и др., выступающее в функции приложения, согласуется с определяемым словом, то есть склоняется, если топоним русского, славянского происхождения или представляет собой давно заимствованное и освоенное наименование.
Географические названия в сочетании с родовым словом обычно не склоняются, когда род обобщающего нарицательного слова и топонима не совпадают.
Кроме того, обнаруживают тенденцию к несклоняемости приложения-топонимы среднего рода, оканчивающиеся на -е, -о (с родовым словом): между селами Молодечно и Дорожно.
Топонимы славянского происхождения, оканчивающиеся на -ово, -ево, -ино, -ыно, не склоняются в сочетании с родовым словом. Подробнее см. в "Письмовнике".
Таким образом, верно: в городе Полярном, в городе Кириллове, в городе Бабаево, в селе Ферапонтово, в селе Хвалевском, в селе Спасское-Куркино.
Если родовое слово сокращено до г. или с., правила те же, что и со словами город и село.