Родился в селе Зыбково, ныне Онуфриевского района Кировоградской области Украины, в семье рабочего. Работал токарем на Тбилисском машиностроительном заводе. Участник Великой Отечественной войны с августа 1941 года. Телефонист 703-й отдельной роты связи 38-й стрелковой дивизии 40-й армии Воронежского фронта, красноармеец Гаврилов в ночь на 24 сентября 1943 года под сильным огнём противника переправился через Днепр в районе села Григоровка Каневского района Черкасской области Украинской ССР и проложил кабельную линию связи. В течение шести суток поддерживал связь между штабом полка, находившимся на плацдарме, и штабом дивизии, не один раз выходил на восстановление линии. Звание Героя Советского Союза присвоено 10 января 1944 года. После войны проживал в городе Тбилиси (Грузия), работал в типографии цветной печати. С 1995 года жил в Нижнем Новгороде, похоронен на Нагорном (Вязовском) кладбище. Награды: ордена Ленина (10.01.1944), Отечественной войны 1-й степени (06.04.1985), медали, в т. ч. «За отвагу» (29.10.1943).