The 42-year-old, an admirer of US President Donald Trump, scored 50.9 percent of the vote in Sunday's runoff.
His 53-year-old rival Rafal Trzaskowski, Warsaw's pro-EU mayor and an ally of the country's centrist government, won 49.1 percent in the highly polarised NATO and EU nation.
Nawrocki's win will block the government's progressive agenda for abortion and LGBTQ rights and could revive tensions with Brussels over rule-of-law issues.
His victory could also undermine strong ties with neighbouring Ukraine, as he is critical of Kyiv's EU and NATO accession plans and wants to cut benefits for Ukrainian refugees.
Polish presidents have some influence over foreign and defence policy and wield veto power over legislation, which can only be overturned by a three-fifths majority in parliament -- which Prime Minister Donald Tusk's government does not have.
Reforms planned by Tusk, a former European Council president who came to power in 2023, have been held up by a deadlock with the current president -- who endorsed Nawrocki.
Many Nawrocki supporters say they want stricter curbs on immigration and advocate conservative social values and more sovereignty for the country within the European Union.
European Commission President Ursula von der Leyen congratulated Nawrocki, saying she was "confident" that "very good cooperation" would continue with Warsaw.
NATO chief Mark Rutte also sent congratulations.
Hungary's Prime Minister Viktor Orban hailed his fellow nationalist's "fantastic victory", writing on X: "We are looking forward to working with you."
French far-right leader Marine Le Pen also welcomed the "good news".
Nawrocki visited the White House during his campaign and said he had been told by Trump: "You will win."
US Secretary of Homeland Security Kristi Noem also endorsed Nawrocki in Poland last week, saying: "He needs to be the next president."
- 'Patriot' -
Nawrocki thanked his backers for their "daily support" in a Facebook post on Monday.
Trzaskowski has yet to publicly react to the official results.
Outgoing President Andrzej Duda, a conservative who has served the two-term limit, congratulated Nawrocki and thanked Poles for the turnout, which was 72 percent.
Polish far-right leader Slawomir Mentzen also sent his congratulations, telling Nawrocki his Confederation party's voters expected him to "not put Ukraine's interests on par with ours".
The results followed a tense evening, as both candidates had claimed victory when an exit poll indicated they were neck and neck.
"We will win and we will save Poland," Nawrocki told supporters after voting finished.
Nawrocki's victory is likely to embolden the populist Law and Justice (PiS) party, which ruled Poland between 2015 and 2023.
Some analysts have predicted it could lead to fresh parliamentary elections if political deadlock with the government persists.
"I'm glad Nawrocki won... It was a really close race, but I think it'll all be good, things will get better," 58-year-old security guard Waldemar told AFP in Warsaw.
Accountant and history buff Anna Maria Ziolkiewicz said "the brightest Poland" won.
The 61-year-old religious conservative from Lodz, central Poland told AFP she voted for Nawrocki "because he is a patriot".
- 'They'll block everything' -
But Trzaskowski voter Zdzislaw Brojek said he expected "chaos" under the new president, who he claimed would do the PiS party's bidding.
"They will block laws, they'll block everything," the 65-year-old gardener told AFP in Warsaw.
Trzaskowski voters tend to back greater integration within the EU and an acceleration of social reforms.
Nawrocki's campaign was overshadowed at times by controversies over a murky apartment purchase and his football hooligan past.
A former amateur boxer, Nawrocki also strongly denied media reports in the last days of the campaign that he had procured sex workers while working as a hotel security guard.
Nawrocki used his last campaign hours on Friday to leave flowers at a monument to Poles killed by Ukrainian nationalists during World War II.
"It was a genocide against the Polish people," he said.
Poland is a fast-growing economy of 38 million people with a leading role in international diplomacy surrounding Ukraine, reports BSS.
It is also a key supply route for Western arms and aid going into Ukraine.