Осенью 1943 года П. И. Гаврилов участвовал в Брянской операции. 10 октября 1943 года Брянский фронт был переименован в Прибалтийский фронт (с 20 октября 1943 года — 2-й Прибалтийский фронт). В его составе Пётр Иванович участвовал в освобождении северо-западных областей РСФСР и Прибалтики (Ленинградско-Новгородская, Старорусско-Новоржевская, Режицко-Двинская и Рижская наступательные операции). В апреле 1945 года полк, в котором служил гвардии майор Гаврилов, был передан Ленинградскому фронту и участвовал в блокаде курляндской группировки противника. Война для Петра Ивановича закончилась в Латвии после капитуляции группы армий «Курляндия» 14 мая 1945 года.