Народився в родині робітника. У 1938 році закінчив середню школу в Ленінграді.
З вересня 1938 року — в Червоній армії. У лютому 1940 року закінчив Орловське бронетанкове училище імені Фрунзе.
У лютому — серпні 1940 року — командир танкового взводу 23-ї легкотанкової бригади, у серпні 1940 — лютому 1941 року — командир танкового взводу 29-го танкового полку 15-ї танкової дивізії Київського особливого військового округу. У лютому 1941 року призначений заступником командира танкової роти 29-го танкового полку 19-ї танкової дивізії Київського особливого військового округу.
Учасник німецько-радянської війни з червня 1941 року. Брав участь в оборонних боях першого періоду війни на Південно-Західному фронті. Після розформування дивізії через втрати направлений в Північно-Кавказький військовий округ, де став командиром танкової роти 4-ї танкової бригади. З листопада 1941 року знову на фронті — ад'ютант старший танкового батальйону 22-ї танкової бригади Західного фронту. У вересні 1942 року був поранений в бою, після одужання став заступником командира танкового батальйону. Його бригада в той час входила до складу 6-го танкового корпусу Західного фронту.
З січня 1943 року — командир танкового батальйону 22-ї танкової бригади 6-го танкового корпусу. За бойові подвиги в жовтні 1943 року бригада та корпус стали гвардійськими, отримавши найменування 40-а гвардійська танкова бригада і 11-й гвардійський танковий корпус. В їх рядах Борис Іванов воював до кінця війни.
Після закінчення війни продовжив службу в Радянській армії. Влітку 1945 року став командиром 1454-го самохідно-артилерійського полку 11-го гвардійського танкового корпусу 1-ї гвардійської танкової армії Групи радянських окупаційних військ у Німеччині, але вже в серпні 1945 року відправлений вчитися в академію.
У 1949 році закінчив Військову академію бронетанкових і механізованих військ імені Сталіна.
З жовтня 1949 року командував 79-м гвардійським важким танко-самохідним полком 7-ї гвардійської танкової дивізії. З березня 1952 року служив в управлінні командувача бронетанковими і механізованими військами Радянської армії: старший офіцер управління бойової підготовки, з травня 1953 року — старший офіцер відділу з тактичної підготовки, з січня 1954 року — старший офіцер відділу військово-навчальних закладів і навчальних частин. З травня 1954 по січень 1956 року — заступник командира 12-ї гвардійської механізованої дивізії Білоруського військового округу.
У 1956 році закінчив річні Вищі академічні курси при Військовій академії імені Фрунзе. З листопада 1956 по липень 1960 року — командир 29-ї танкової дивізії в Білоруському військовому окрузі.
У липні 1960 року знову направлений вчитися, у 1962 році закінчив Військову академію Генерального штабу Збройних сил СРСР.
З липня 1962 по січень 1965 року служив заступником командувача армії з бойової підготовки — начальником відділу бойової підготовки 1-ї окремої армії в Київському військовому окрузі.
У січні 1965 — квітні 1967 року — 1-й заступник командувача 13-ї армії Прикарпатського військового округу. У квітні 1967 року призначений заступником командувача військ Прикарпатського військового округу з бойової підготовки та військово-навчальних закладів.
У жовтні 1969 — грудні 1975 року — командувач Південної групи військ (Угорська Народна Республіка).
У січні 1976 — вересні 1987 року — 1-й заступник начальника Цивільної оборони СРСР. У 1986 році брав участь в ліквідації наслідків аварії на Чорнобильській АЕС. У вересні 1987 року генерал-полковник Борис Іванов вийшов у відставку.
З вересня 1987 року — на пенсії в місті Москві. Похований на Кунцевському цвинтарі Москви.