The Dutchman regained the lead on lap 13 of 72 only for the race to be red-flagged with just eight laps to run after Zhou Guanyu crashed out following a second heavy shower.
A 43-minute suspension followed as the tyre barrier at the opening corner was repaired.
But Verstappen beat Aston Martin's Fernando Alonso in a six-lap dash to the chequered flag to match Vettel's streak, set in 2013.
Perez finished third but was demoted a place after he was hit with a five-second penalty for speeding in the pit lane, allowing Pierre Gasly to take the final spot on the podium.
Carlos Sainz finished fifth, holding off Lewis Hamilton, with Lando Norris seventh. George Russell was forced to retire his Mercedes following a late duel with Norris.
Verstappen, whose Red Bull team remain unbeaten this season, extended his championship lead from 125 points to 138 ahead of next weekend's Italian Grand Prix in Monza.
Dark clouds gathered in the minutes ahead of Sunday's round in Zandvoort, 30 miles outside of Amsterdam, and just a handful of corners into the start, the heavens opened.
While Verstappen and the leading pack tiptoed their way round the 2.65-mile circuit, Perez - who started in seventh - was called in by his quick-thinking Red Bull team for the intermediate tyres.
With the rain still falling, Verstappen sensibly stopped the next time round but McLaren's Lando Norris and the Mercedes of Russell stayed out on the slick rubber despite the worsening conditions.
Hamilton, who started 13th, was also sent round for another lap despite the seven-time world champion's obvious concerns.
"We should have come in, man," he said over the radio. "It is very wet."
"Copy, Lewis," said his race engineer Peter Bonnington. "We're going to stay out. We're going to have to brave this."
But at the end of the third lap, Hamilton was in for wet tyres. He rejoined the track in last place. Russell was still sliding around on slicks before he was changed on to the wet rubber at the end of lap four. When the dust settled, Hamilton and Russell occupied 16th and 18th places.
"I was forecast a podium," said Russell on the radio. "F***, how did we mess this up?"
By now the rain had relented and dry line was already starting to emerge, and, despite his early handicap, the all-conquering Verstappen was, predictably, on the march.
On lap six he raced past Gasly for third before moving up to second a lap later as he blasted ahead of Zhou. Perez was seven seconds up the road.
Verstappen was taking chunks out of Perez - on one lap as many as four seconds - before he reverted to slicks on lap 11. Perez stopped the next time round but emerged three seconds behind the flying Dutchman, who was now back in the lead, and back in control.
On lap 15, Logan Sargeant was back in the wall a day after crashing out in qualifying. The American was unharmed but the safety car was deployed to retrieve his machine.
Mercedes called Russell in for his third stop of the afternoon, putting him on the hardest, durable tyre in the hope it would see him through to the end of the race.
With Sargeant's wounded Williams out of the way, the race resumed on lap 21. Verstappen controlled the restart to leave team-mate Perez trailing.
Verstappen raced off into the distance with Hamilton and Russell beginning their fightback through the pack. The Mercedes men were back in the top 10 but with only a dozen laps remaining, the rain returned with vengeance.
The drivers were back in the pits for intermediate tyres before Perez spun his Red Bull at the opening corner and lost second to Alonso.
As the downpour intensified, Alfa Romeo's Zhou aquaplaned at the first corner and thudded into the tyre wall. Hamilton also ran off at the opening bend but managed to keep his Mercedes out of the barriers and rejoined the track. Race director Niels Wittich red-flagged the race.
After a lengthy suspension the event was back under way at 5.14pm local time with two laps behind the safety car and a rolling start.
Alonso sensed his first win in a decade but despite the tricky conditions, Verstappen kept Alonso behind, crossing the line 3.7 seconds clear of the Spaniard.