Родился 14 октября 1914 года в селе Песочнодубровка Томского уезда Томской губернии Российской империи (ныне село Кожевниковского района Томской области Российской Федерации).
Советский военный. Участник Великой Отечественной войны. Герой Советского Союза (1944). Гвардии майор
В январе 1942 года был призван Томским райвоенкоматом Новосибирской области. До декабря 1942 года служил в запасном полку, занимаясь обучением новобранцев. В действующей армии младший лейтенант П. Ф. Гаврилов с 18 декабря 1942 года в составе 52-й танковой бригады 58-й армии Северной группы войск Закавказского фронта в должности командира танкового взвода 52-го танкового батальона. Участник Битвы за Кавказ. Боевое крещение получил оборонительных боях под Моздоком. 7 января 1943 года 52-я танковая бригада вошла в состав танковой группы подполковника В. И. Филиппова и перешла в наступление в направлении Георгиевск-Минеральные Воды в ходе Северо-Кавказской операции. 10 января Т-34 младшего лейтенанта П. Ф. Гаврилова одним из первых ворвался в Минеральные Воды, уничтожив при этом 3 танка, 8 автомашин, 1 пулемётный расчёт и до 70 солдат и офицеров противника. За отличие в Битве за Кавказ 52-я танковая бригада 7 февраля 1943 года была преобразована в 34-ю отдельную гвардейскую танковую бригаду, после чего была выведена в резерв и находилась там до осени 1943 года.
14 октября 1943 года 34-я отдельная танковая бригада была переброшена на Калининский фронт (с 16 октября 1943 года — 1-й Прибалтийский фронт), где участвовала в оборонительных боях под Невелем в составе 3-й ударной армии. Затем в составе 4-й ударной армии — в Городокской операции. В конце февраля 1944 года бригада вошла в состав 6-й гвардейской армии и до лета 1944 года вела позиционные бои северо-западнее Невеля. Пётр Филиппович к этому времени получил звание старшего лейтенанта и был назначен на должность командира танковой роты 1-го танкового батальона.
23 июня 1944 года началась операция «Багратион». В первый день наступления рота гвардии старшего лейтенанта П. Ф. Гаврилова прорвала оборону немцев в районе Сиротино Витебской области Белоруссии и 24 июня 1944 года форсировала реку Западная Двина в районе населённого пункта Улла, захватила плацдарм и удержала его до подхода стрелковых и артиллерийских частей.
22 июля 1944 года гвардии старшему лейтенанту Гаврилову Петру Филипповичу указом Президиума Верховного Совета СССР было присвоено звание Героя Советского Союза.
В дальнейшем Пётр Филиппович участвовал в освобождении Прибалтики (Шауляйская, Рижская и Мемельская операции) и в Восточно-Прусской стратегической операции. Войну П. Ф. Гаврилов закончил в составе 1-й ударной армии Ленинградского фронта под Лиепаей.
После войны Пётр Филиппович продолжил службу в армии. Жил в городе Свердловске. 15 июля 1968 года Пётр Филиппович скончался. Похоронен на Широкореченском кладбище Екатеринбурга.