It was also a frustrating night for Cristiano Ronaldo as his 100th Portugal appearance ended in a 1-1 draw with Northern Ireland.
England didn't even get a chance to play as a waterlogged pitch in Warsaw caused the match against Poland to be postponed to Wednesday.
World and European champion Spain led through Sergio Ramos' header but Cesc Fabregas had a penalty saved before Olivier Giroud clinched a 1-1 draw for France in the last attack.
Germany had been rampant against Sweden, storming to a 4-0 lead by the 55th minute, but Zlatan Ibrahimovic began Sweden's comeback seven minutes later and Rasmus Elm netted an unexpected equalizer in stoppage time.
Italy beat Denmark 3-1 despite playing most of the second half with 10 men, and the Netherlands maintained its perfect qualifying start with a 4-1 victory over Romania.
At Madrid, Spain was on the verge of closing out a 25th consecutive win in qualifying stretching back to 2007.
But in the fourth minute of stoppage time, Juanfran Torres gave away possession in midfield. Franck Ribery crossed to Giroud, who headed beyond goalkeeper Iker Casillas to cancel out Ramos' 25th-minute goal.
"If I had just kicked the ball off the field there, the game would have ended there," Torres said.
Ahead of France
Spain is now only ahead of France on goal difference in Group I, with Belarus three points behind after beating Georgia 2-0.
In Berlin, Sweden coach Erik Hamren was celebrating an "historical" comeback that had seemed implausible as Germany ripped through his team in the first half.
Miroslav Klose scored in the eighth and 15th minutes, Per Mertesacker added another in the 39th and Mesut Oezil made it 4-0 in the 56th.
Ibrahimovic triggered the comeback and Mikael Lustig and Johan Elmander scored in the second half before Elm secured a valuable competition point with a goal two minutes into injury time.
Germany still has a three-point lead in Group C over Sweden, which has played one fewer game.
"I don't know how to explain it," Germany coach Joachim Loew said. "Normally, we would not waste a four-goal lead. The problem seems to have been mental after 60 minutes. We became sloppy and lost our discipline."
In Bucharest, Jeremaine Lens headed the Netherlands in front in the ninth after goalkeeper Ciprian Tatarusanu punched a ball to him, while Bruno Martins added a second from close range.
Ciprian Marica pulled one back for Romania after dribbling past three players, but Rafael van der Vaart netted from the penalty spot before half time and Robin van Persie added a late fourth.
The Dutch have a three-point lead in Group D over Romania and Hungary, which beat Turkey 3-1. Estonia claimed its first points by beating bottom-place Andorra 1-0.
In Milan, Mario Balotelli returned to the Italy side for the first time since Euro 2012, setting up Riccardo Montolivo's opener and scoring the third goal against Romania.
Denmark had threatened to make a comeback when William Kvist made it 2-1 in first-half stoppage time after Daniele De Rossi's second for Italy.
Italy forward Pablo Osvaldo was sent off 16 seconds into the second half for a reckless elbow into Denmark midfielder Nicolai Stokholm's face, but Balotelli made sure of the win that gave Italy a 4-point lead over Bulgaria in Group B.
Bulgaria was held to a 0-0 draw at the Czech Republic.
It's tight at the top of Group A, with Belgium only ahead of Croatia on goal difference.
Christian Benteke and Vincent Kompany scored twice in three minutes to give Belgium a 2-0 victory over Scotland, while Croatia beat Wales by the same score through goals from Mario Mandzukic and Eduardo.
In Group H, after the deluge in Warsaw forced Poland's game against England back a day, Montenegro joined the English on seven points at the top by winning 1-0 in Ukraine. Moldova beat San Marino 2-0.
Former England coach Fabio Capello's new team Russia made it four wins out of four in qualifying. Roman Shirokov's late penalty clinched a 1-0 victory over Azerbaijan to go five points clear of Israel in Group F.
Israel beat Luxembourg 3-0 to go ahead of Portugal on goal difference. It required a late equalizer by Helder Postiga for Portugal to cancel out Niall McGinn's first-half opener for Northern Ireland.
Switzerland remains three points in front of Norway at the top of Group E after second-half goals from Tranquillo Barnetta and Mario Gavranovic clinched a 2-0 win in Iceland. Norway won 3-1 in Cyprus, while Albania beat Slovenia 1-0.
The Group G lead is shared by Bosnia-Herzegovina, which beat Lithuania 3-0, and Greece, which won 1-0 in Slovakia. – Sapa-AP