The White Rose, starting the day 65 runs behind at 89 for two in their second innings – following-on after being dismissed for 179 in reply to Surrey’s first-innings 333 – were bowled out again for 208 with Dan Worrall taking four for 61.
That left Surrey needing just 55 for victory, and their 22-point win took them 27 clear at the top of Division One – an unassailable lead with just one game left.
It took captain Rory Burns and his fellow opener Ryan Patel only 37 balls to knock off the runs required.
Hampshire’s dream of winning the title for the first time in 49 years ended when they lost to Kent by 77 runs.
Joe Weatherley, James Vince and James Fuller – with 56, 73 and 78 not out respectively – had given the hosts a chance of an unlikely chase of 378 at the Ageas Bowl.
But Hampshire’s hopes of replicating the 1961 and 1973’s champions were dashed – with Nathan Gilchrist taking four for 60, including the winning wicket, as the hosts reached only 300.
Tom Price produced an inspired career-best performance of eight for 23 and match figures of 10 for 73 to ease Gloucestershire to a three-wicket triumph over Warwickshire at Bristol.
Gloucestershire banked 21 points, but their first victory in 13 attempts in red-ball cricket this summer has come too late to save them from relegation.
As for Warwickshire, they remain second from bottom in the table and, with one game to play, look like joining Gloucestershire in Division Two next year.
Somerset will go into the final day of their match with Northamptonshire at Taunton in a strong position, knowing victory will guarantee Division One survival.
With a lead of 401 and nine second-innings wickets still in hand, the home side can feel confident of at least a draw, which would put them 17 points clear of second-from-bottom Warwickshire.
Division Two leaders Nottinghamshire suffered only their second defeat of the season after losing by an innings and 79 runs to Worcestershire at New Road.
The home side collected the four remaining Nottinghamshire second-innings wickets inside 70 minutes as they were dismissed for 183 in 52.2 overs.
Middlesex are within sight of a victory that will put them squarely in contention for the title after Leicestershire’s fragile batting undid their good work with the ball.
Skipper Callum Parkinson took four for 69 and young leg-spinner Rehan Ahmed a career-best three for 50 as Middlesex collapsed from 209 for three to 271 all out in their second innings, losing their last seven wickets for 62 after Mark Stoneman (81) and Max Holden (91) had put on 165 for the fourth wicket.
It left Leicestershire with a fourth-innings target of 275 to record their first win of the season. Instead they are in deep trouble at 13 for four going into the final day.
New Zealand spinner Ajaz Patel claimed his first five-wicket haul for Glamorgan to help them close in on victory at home to Derbyshire.
The Welsh county need another seven wickets on the final day to maintain the pressure on Middlesex in the race for the second promotion spot.
Durham took one wicket at Seat Unique Riverside before rain intervened to halt their charge for victory with Sussex on nine for four.