Родился в деревне Муханово, ныне Кстовского муниципального округа Нижегородской области, в семье крестьянина. В начале 1930-х годов семья переехала в Нижний Новгород. Работал чертёжником в отделе главного технолога завода «Новое Сормово». Без отрыва от производства занимался в Горьковском аэроклубе им. П.И. Баранова. Окончил Энгельсскую военную школу пилотов (1941 г.). Участник Великой Отечественной войны с января 1943 года. Принимал участие в боях на Северо-Западном, Воронежском, 1-м Украинском фронтах. Участвовал в Курской битве, освобождении Украинской ССР, Румынии, Польши, боях в Германии, Пражской операции. Заместитель командира эскадрильи 160-го гвардейского авиаполка 8-й гвардейской бомбардировочной авиадивизии 6-го гвардейского бомбардировочного авиакорпуса 2-й воздушной армии 1-го Украинского фронта гвардии старший лейтенант Иванов за годы войны совершил 164 боевых вылетов на бомбардировку и воздушную разведку. Звание Героя Советского Союза присвоено 27 июня 1945 года. Принимал участие во взятие Берлина и освобождении Праги. После окончания войны продолжил службу в армии. В апреле 1949 года гвардии капитан Иванов был направлен в город Таганрог на высшие офицерские лётно-тактические курсы усовершенствования командиров авиационных эскадрилий. Тяжело заболел и скончался в Таганрогском госпитале. Похоронен на Кооперативном кладбище в Нижнем Новгороде. Награды: ордена Ленина (27.06.1945), Красного Знамени (19.09.1943, 01.04.1945, 12.05.1945), Отечественной войны 1-й степени (21.09.1944), Красной Звезды (27.07.1943), медали. Память: улица Великоовражная (г. Нижний Новгород, Сормовский район) переименована в улицу Героя Иванова. В средней общеобразовательной школе № 82 (г. Нижний Новгород, Сормовский район, улица Культуры, 1) открыт школьный музей, а на здании школы установлена мемориальная доска.