Алексей Никанорович Захаров родился 24 февраля 1921 года в селе Никольское (ныне — Данкоский район Липецкой области).
В 1936 году окончил школу фабрично-заводского ученичества, после чего работал слесарем на Люберецком заводе сельскохозяйственного машиностроения, затем техником-нормировщиком в окружных ремонтных мастерских.
В апреле 1941 года Захаров был призван на службу в Рабоче-Крестьянскую Красную Армию. С первого дня Великой Отечественной войны — на её фронтах.
В 1943 году окончил курсы младших лейтенантов.
К июню 19544 года лейтенант Алексей Захаров командовал пулемётной ротой 492-го стрелкового полка 199-й стрелковой дивизии 2-го Белорусского фронта. Отличился во время освобождения Могилёвской области Белорусской ССР.
26 июня 1944 года рота Захарова переправилась через Днепр к северу от Могилёва и захватила плацдарм на его западном берегу, благодаря чему смог переправиться весь полк. 27 июня Захаров лично уничтожил немецкий танк и несколько десятков вражеских солдат и офицеров.
Указом Президиума Верховного Совета СССР от 24 марта 1945 года за "образцовое выполнение заданий командования и проявленные мужество и героизм в боях с немецкими захватчиками" лейтенант Алексей Захаров был удостоен высокого звания Героя Советского Союза.
Участвовал в Параде Победы. Продолжал службу в Советской Армии.
В 1946 году он окончил курсы "Выстрел", в 1956 году — Военную академию тыла и снабжения.
В 1967 году в звании полковника Захаров был уволен в запас. Проживал в Горьком (ныне — Нижний Новгород), до выхода на пенсию работал инженером управления Волжского объединённого пароходства. Занимался общественной деятельностью, входил в Президиум Нижегородского городского Совета ветеранов.
Умер 2 апредя 2006 года, похоронен на нижегородском кладбище "Марьина Роща".
Почётный гражданин Нижнего Новгорода, Почётный гражданин Нижегородской области. Был также награждён орденами Отечественной войны 1-й и 2-й степеней, двумя орденами Красной Звезды.