Born in Fenais da Luz, a civil parish of Ponta Delgada in the Azores, Paulo Henrique came through the youth ranks of local team Santa Clara. On 27 July 2013, he made his professional debut in a 2013–14 Taça da Liga match against Farense, when he started and played the full game.[1] He played six Segunda Liga games over the season and scored the only goal of a home win over Sporting CP B on 29 January 2014.
On 3 July 2015, Paulo Henrique signed a four-year deal with Primeira Liga club Paços de Ferreira.[2] He made two league appearances in his first season and scored on the latter, a 4–3 win at União da Madeira on 17 April 2016.[3] After making no more appearances, he moved to Sporting da Covilhã in the second division on a season's loan on 17 August 2017.[4]
Having made just three appearances as Paços won the second division title in 2018–19, Paulo Henrique's contract with the Castores expired and he signed a one-year deal with Penafiel in that league.[5][6]
In June 2021, Paulo Henrique returned to Santa Clara on a three-year deal, with the team now in the top flight.[7]
On 26 August 2024, he made his first career move abroad, joining several compatriots at Polish top division club Radomiak Radom on a two-year contract.[8]
Manager Rui Jorge called up Paulo Henrique as the final name for the Olympic team's entry at the 2016 tournament in Brazil.[12] His one appearance for the quarter-finalists was the final group game on 10 August at the Mineirão, playing the entirety of a 1–1 draw with Algeria.[13]