The Dutch need only a draw at home to Belgium in Amsterdam on Sunday to secure a place in next year's four-team Nations League finals.
Gakpo's 13th-minute opener at the Narodowy Stadium came at the end of a slick passing move as the striker had only to tap home Denzel Dumfries' inch-perfect square pass after the Polish defence has been prised apart.
Bergwijn doubled the lead in the 60th minute, coming in off the left flank to play a clever one-two with substitute Vincent Janssen and curling the ball expertly into the net.
The victory was deserved by the Dutch as their high pressing game regularly robbed Poland of possession and allowed the visitors to dictate the tempo.
But it might have been a different scenario had Poland's halftime substitute Arkadiusz Milik not missed from point-blank range after being set up by Przemyslaw Frankowski's cross shortly after coming on.
It was Poland's only clear-cut chance, but Milik inexplicably put his effort wide to help the Dutch to their first clean sheet in seven games this year.
Netherlands coach Louis van Gaal surprised by choosing 38-year-old Ajax Amsterdam goalkeeper Remko Pasveer, making him the country's second oldest debutant after Sander Boschker, who was almost 40 when he won his only cap in goal against Ghana in a World Cup warmup friendly in 2010.
Van Gaal told Dutch television before kickoff he was "intrigued" to see what Pasveer might add to the team after a good start to the season with Ajax, but there was not much for the goalkeeper to do.