Изначально все подобные названия были склоняемыми (вспомним Лермонтова: «Недаром помнит вся Россия про день Бородина!»). Первоначально несклоняемые формы употреблялись лишь в речи географов и военных, потому как важно было давать названия в исходной форме, чтобы не было путаницы: Киров и Кирово, Пушкин и Пушкино и так далее. Но постепенно несклоняемые формы стали проникать и в письменную речь.
Так, в «Грамматике современного русского языка» 1970 года было указано, что в современном литературном русском языке обнаруживают тенденцию пополнять группу слов нулевого склонения топонимы с финалиями –ово, -ёво, -ево, -ино. Другими словами, несклоняемость тогда только начала распространяться.
Спустя 40 лет несклоняемые варианты стали настолько широко распространенными, что изначально единственно правильный, склоняемый вариант сегодня многими воспринимается уже как ошибочный.
Однако постепенно стала нормативной и несклоняемость рассматриваемых названий, о чем (правда, с осторожностью) говорят современные словари.
Таким образом, сегодня можно считать нормативным оба варианта – склоняемый и несклоняемый. Заметим также, что за последние десятилетия окончательно закрепилась отмеченная «Русской грамматикой» тенденция не изменять исходной формы названия населенных пунктов, если они употреблены в качестве приложения, вместе с родовым названием. Например, в городе Конаково, в селе Селихово.