Arsenal got back to winning ways with a fluid attacking display against a battling Fulham at Highbury.
The Gunners started brightly, Lauren missing a penalty after Thierry Henry was brought down by Zat Knight.
But Claus Jensen scored first for Fulham with a neat lob before Pascal Cygan headed in an equaliser for the hosts and Henry gave them the lead.
Henry dinked home a second after being released by Aleksander Hleb before Cygan crashed home from close range.
Arsenal had come close to scoring after only a minute, Henry just failing to latch on to Ashley Cole's cross and crown a sweeping move.
And after six minutes, Henry won a penalty after having his heels clipped by Knight when through on goal.
But Henry, who does not take penalties when he is the man fouled, let Lauren step up and the right-back had his shot saved by Fulham's stand-in keeper Tony Warner.
Fulham's first chance came courtesy of Gunners centre-back Cygan, the Frenchman heading just wide of his own goal when under no pressure.
Francesc Fabregas went close for the hosts again on 15 minutes, his rifled shot just tipped over by Warner after being teed up by Dennis Bergkamp.
But after soaking up wave upon wave of early assaults, Fulham playmaker Jensen put his side ahead after 22 minutes with an exquisite curling lob.
Shortly after, Lehmann was forced into a sharp save from Moritz Volz before Reyes almost tip-toed through to score at the other end.
Cygan levelled things on 32 minutes, heading home a teasing Bergkamp cross.
Brian McBride should have restored Fulham's lead before half-time but blazed wide with the goal at his mercy.
Arsenal started the second half as they did the first, Bergkamp volleying across goal from a deep Cole cross before Aleksander Hleb dragged a shot wide.
But Fulham stayed in the hunt, McBride just failing to reach a Steed Malbranque cross on 50 minutes.
However, Henry gave Arsenal the lead after 53 minutes, bringing down a dinked Reyes through-ball and passing the ball into the net.
McBride almost equalised immediately but his header was parried over by Lehmann.
But Arsenal continued to look sublime in attack, the impressive Reyes almost setting up Bergkamp to score on 70 minutes and Gilberto being denied by Warner.
Bergkamp almost scored himself soon after, but hit his shot straight at Warner before Henry poked a shot just wide.
But Henry did not have to wait much longer, dinking the ball over the sprawling Warner after being released by Hleb.
The ubiquitous Bergkamp almost made it four just before the final whistle, but was once again denied by the impressive Warner.
However, Arsenal were not finished and Cygan made certain deep into extra time after a defensive mix-up.
Arsenal manager Arsene Wenger:
"We created chances and had the mental strength to keep going and that is the important thing.
"Pascal Cygan played very well. We needed experience at the back and I wanted to give Philippe Senderos a breather.
"Thierry Henry did extremely well leading the line and Dennis Bergkamp is a great player - you never lose your touch and he still plays great games."
Fulham manager Chris Coleman:
"I feel sorry for the guys. They had a real go and didn't come to sit back - but there's always a chance you'll get caught by Arsenal.
"We created chances and it was a good team effort. The result looks like a hammering but we gave them a good game.
"I'm delighted with the performance. The commitment was there but we have to perform more consistently."
Arsenal: Lehmann, Lauren, Toure, Cygan, Cole, Hleb (Clichy 83), Silva, Fabregas, Reyes (Flamini 77), Bergkamp, Henry.
Subs Not Used: Pires, Van Persie, Almunia.
Booked: Reyes, Bergkamp, Cole, Lauren, Flamini.
Goals: Cygan 32, Henry 53, 82, Cygan 90.
Fulham: Warner, Volz, Knight, Rehman, Niclas Jensen, Claus Jensen, Diop, Boa Morte, Malbranque, McBride (John 64), Radzinski.
Subs Not Used: Helguson, Elrich, Batista, Leacock.
Booked: Boa Morte, Rehman.
Goals: Claus Jensen 22.
Ref: M Clattenburg (Co Durham).