Родился в 1979 году в селе Льяшево Тетюшского района Республики Татарстан.
Окончил Казанский государственный медицинский университет в 2002 году.
Работал врачом-стажером в хирургическом отделении Тетюшской центральной районной больницы.
В 2004 году переведён на должность хирурга поликлиники. В 2007 году стал заместителем главного врача по поликлинической работе.
В 2019 году приступил к работе в Новоульяновской городской больнице имени А.Ф. Альберт в качестве заведующего отделом медицинской статистики и организационно-методической работы.
С 2019 году руководил Новоульяновской городской больницей.
В марте 2022 года был назначен главным врачом ЦГКБ.
30 мая 2022 года попросил освободить его от должности по собственному желанию, но в августе снова вернулся в кресло руководителя медучреждения. Также он по совместительству возглавил Тереньгульскую ЦРБ. "Удаленность между больницами составляет 70 км, это создает определенные сложности – при каждой поездке 2-2,5 часа тратишь только на дорогу. Но в пути без дела не сижу – решаю вопросы по телефону, видеосвязи, изучаю документы", - рассказал Фирсов в интервью.
В ноябре 2022 года стал главным фигурантом уголовного дела и единственным подозреваемым по ст.160 УК РФ «Присвоение или растрата». Сумма ущерба оценивается в размере до 250 тыс рублей. По версии следствия, Павел Фирсов, будучи на посту главврача Новоульяновской больницы (до марта 2022 года), злоупотребил своими должностными полномочиями, трудоустроив в учреждение специалистов, которые не появлялись на своем рабочем месте, хотя получали зарплату ежемесячными переводами на банковскую карту.
Павел Фирсов свою причастность к делу не признает, утверждает, что действовал по указанию вышестоящего начальства, которое является его работодателем и учредителем больницы.
По данным регионального минздрава, в 2022 года зарабатывал 80,6 тысячи рублей в месяц.
В июле 2023 года был выдвинут кандидатом от КПРФ по Заволжскому одномандатному избирательному округу № 12 на выборах в депутаты Законодательного собрания Ульяновской области. Занял второе место после единоросса Николая Лазарева - набрал 17,21% (1901 голос).