Andre Villas-Boas’s team were on course for a valuable three points when Belgian defender Jan Vertonghen struck twice for the visitors either side of half-time after Luis Suarez gave the Reds a 21st minute lead.
But Stewart Downing capitalised on woeful defending from Spurs right-back Kyle Walker to equalise in the 66th minute.
And England star Gerrard netted the winner from the penalty spot in the 82nd minute after Benoit Assou-Ekotto fouled Suarez.
Tottenham remain third, but fourth-placed Chelsea, two points behind, and fifth placed Arsenal both now have a game in hand in the race to finish in the top four.
“It was a pity for us because we had some good moments. The key moment of the game was when we could have gone 3-1 up through Gylfi Sigurdsson,” Villas-Boas said.
“It’s football and we have to hopefully get ourselves back together and go on another good run.”
Brendan Rodgers’s Liverpool climb to sixth place, closing the gap on Chelsea to seven points, and retain an outside chance of qualifying for the Champions League.
In the day’s other Premier League match, Senegal striker Papiss Demba Cisse bagged a stoppage-time winner as Newcastle boosted their survival bid with a 2-1 victory over Stoke at St James’ Park.
Alan Pardew’s team moved nine points clear of the Premier League relegation zone thanks to Cisse, who struck two minutes into additional time to complete a fine fightback from the Magpies.
Jonathan Walters put Stoke ahead from the penalty spot with 67 minutes gone, but Yohan Cabaye’s superb free-kick soon after gave Newcastle renewed hope.
“It’s a massive win,” Pardew said. “Papiss Cisse is a natural goalscorer. It popped up and a lot strikers would have snatched at that, but he has the confidence to let it come all the way down and smash it home.
“We go home in a much different situation than we would have been if it hadn’t gone in. This goal will do him the world of good. We’ve improved dramatically and needed to.”