Родился 17 июня 1897 г. в селе Торопово Череповецкого уезда Новгородской губернии, ныне Бабаевского района Вологодской области.
Окончил начальное училище в родном селе.
С 27 февраля 1917 г. красногвардеец Сестрорецкого отряда Красной гвардии.
В июне 1918 г. П. Н. Вавилов добровольцем вступил в Красную Армию, делопроизводитель волостного военкомата. С ноября 1918 г. на учебе на 1 Петроградских пехотных командных курсах. С декабря 1919 г. командир взвода, помощник командира, командир роты 494, 489 стрелковых полков 55 стрелковой дивизии. С августа 1921 г. командир взвода, командир роты, и.д. командира батальона караульных частей, подчиненных Харьковскому губвоенкомату Украинского ВО. Участник Гражданской войны в 1917–1921 гг. на Западном фронте, против войск генерала Н. Н. Юденича на Украине.
В межвоенный период с 1923 г. на учебе в Киевской объединенной военной школе. После окончания военной школы с 1924 г. и.д. командира роты, для поручений, начальник мобилизационного отдела, с 1925 г. – командир отдельного штрафного батальона Харьковского губернского военкомата, помощник начальника мобилизационного отделения управления территориального округа, 23 стрелковой дивизии Украинского ВО. С осени 1925 г. на учебе на факультете снабжения Военной академии им. М. В. Фрунзе.
С 1928 г. после окончания академии П. Н. Вавилов служил в Закавказском ВО: помощник начальника, начальник 1 отдела Управления начальника снабжения, с 1931 г. – начальник 2 отдела штаба армии, в 1932 г. – и.д. начальника штаба Кавказской Краснознаменной армии. В 1933 г. был награжден орденом Трудового Красного Знамени ЗСФСР.
В августе 1933 г. – январе 1934 г. военный атташе при Полпредстве СССР в Афганистане.
С января 1934 г. в распоряжении Главного управления РККА. С марта 1935 г. начальник 1 отделения 2 отдела административно-мобилизационного управления Главного управления РККА, интендант 1 ранга (25.09.1935 г.), с 1937 г. – инспектор, старший инспектор группы, полковник (1938 г.), с ноября 1939 г. – заместитель начальника группы контроля при НКО СССР. С июня 1941 г. начальник 9 отделения информационного отдела РУ ГШ Красной Армии.
С началом Великой Отечественной войны до февраля 1942 г. в той же должности. С сентября 1941 г. по февраль 1942 г. выполнял специальные задания РУ ГШ Красной Армии на Кавказском фронте.
С февраля по декабрь 1942 г. полковник П. Н. Вавилов начальник РО штаба 16-й армии Западного фронта. Участвовал в оборонительных боях на жиздринском направлении.
«Своим усердным и добросовестным отношением к работе добился правильной организации службы отдела. Командование армии своевременно получает нужные данные о противнике.
Тов. Вавилов провел большую работу по выращиванию кадров разведчиков. В армейском запасном стрелковом полку организована по его инициативе специальная рота по подготовке разведчиков. При армейских курсах младших лейтенантов организован специальный взвод по подготовке командных кадров для разведслужбы. В результате проделанной работы по подготовке разведчиков, заметно улучшилось дело с захватом пленных в частях армии… В период августовских и сентябрьских боев, РО штаба армии, руководимый тов. Вавиловым, со своей работой справился хорошо…»
«…С февраля 1942 года по декабрь 1942 г. начальник РО 16 Армии – в этой должности тов. Вавилов сумел организовать работу всех звеньев разведывательных органов на своевременное обеспечение командованию данных о группировке, действиях и намерениях противника. Выезжая в соединения и части, выполнял задания Военного Совета, проявляя при этом мужество, инициативу и находчивость…»
В декабре 1942 г. (реально с января 1943 г.) – феврале 1943 г. начальник РО штаба Донского фронта. Участвовал в операции «Кольцо» по ликвидации окруженной в Сталинграде группировки противника.
За образцовое выполнение заданий командования в операции был награжден орденом Красной Звезды. Постановлением СНК СССР от 27 января 1943 г. присвоено воинское звание генерал-майор.
«…С января 1943 г. работает начальником РО Донского фронта. В самый ответственный период подготовки и осуществления генерального штурма окруженных войск противника под Сталинградом тов. Вавилов своей умелой работой полностью обеспечил командование данными об окруженных войсках…»
В феврале-апреле 1943 г. начальник РО штаба Центрального фронта. Участвовал в наступательных операциях войск фронта на орловско-брянском направлении (февраль-март 1943 г.), в обороне рубежа Мценск-Брянцево-Рыльск (март-апрель 1943 г.).
С апреля 1943 г. по сентябрь 1944 г. генерал-майор П. Н. Вавилов заместитель начальника (по агентурной разведке) РУ ГШ Красной Армии.
С сентября 1944 г. и до окончания войны заместитель начальника штаба фронта по разведке – начальник РО штаба Закавказского фронта. Участвовал в организации действий войск фронта по прикрытию Черноморского побережья на участке Лазаревское-Батуми и государственной границы с Турцией и Ираном.
После войны с сентября 1945 г. П. Н. Вавилов начальник РУ штаба Тбилисского ВО, с мая 1946 г. – начальник РУ штаба Закавказского ВО. С ноября 1946 г. в распоряжении ГУК, управления кадров Сухопутных войск. С апреля 1947 г. старший преподаватель кафедры службы штабов, с октября 1949 г. – старший преподаватель кафедры войсковой разведки Военной академии им. М. В. Фрунзе.
С 20 января 1950 г. генерал-майор П. Н. Вавилов в запасе. Жил в Москве. Умер в 1959 г.
Похоронен на Введенском кладбище.
Награжден орденом Ленина (21.02.1945 г.), тремя орденами Красного Знамени (27.02.1944 г., 03.11.1944 г., 11.1947 г.), орденами Трудового Красного Знамени (1933 г.), Отечественной войны I степени (17.05.1943 г.), двумя орденами Красной Звезды (11.01.1943 г., 29.01.1943 г.), медалями.