After coming from behind to beat Watford in midweek, Spurs dominated their visitors for lengthy spells at Wembley but lacked a killer instinct in the absence of injured duo Harry Kane and Dele Alli.
Lucas Moura started in Kane's normal position but posed scant threat to a packed Newcastle defence, while at the other end Salomon Rondon and Ayoze Perez were a nuisance throughout.
Just as Newcastle looked set to extend their unbeaten Premier League run to three matches, Son's shot from the edge of the box squirmed under Dubravka and secured a win that keeps Tottenham's faint title hopes alive.
Lucas should have given the hosts an early lead when he powered a free header harmlessly wide before Erik Lamela crashed a better effort onto the crossbar as Spurs began to turn the screw.
Newcastle's first chances came after the half-hour mark when Perez's shot rebounded to Rondon just outside the six-yard box, but the Venezuela international hesitated and his shot was crowded out.
Moussa Sissoko deftly met a high, looping cross with a side-footed volley that deserved a goal only for Dubravka to get down well to parry it away seven minutes before half-time.
Davinson Sanchez sent a header narrowly wide of Dubravka's net early in the second half and moments later Rondon went even closer at the other end, beating Toby Alderweireld in the air and hitting the post with his try.
Fabian Schar hooked off the line when Christian Eriksen thought he had flicked the ball into the net from close range, but Newcastle were eventually breached.
Son's low drive looked to be heading straight into Dubravka's arms yet it wriggled underneath his dive and found the net.
