Fulham remain a point above the Premiership relegation zone after losing out to two late Arsenal goals.
The Gunners started brightly and were soon ahead when Julio Baptista headed home Emmanuel Adebayor's early cross.
Arsenal should have wrapped up victory long before Simon Davies lobbed Fulham level after Jens Lehmann's mistake.
But with six minutes left Adebayor slotted home to make it 2-1 before Gilberto scored from the spot after Alexander Hleb was fouled in the area.
The scoreline was slightly harsh on Fulham but, in truth, they only had themselves to blame for failing to make a game of it until the closing minutes.
There was a minute's applause before the game in honour of the late former Arsenal and England midfielder Alan Ball, as well as well as for Arthur Milton, who had played both football and cricket for England.
And the Gunners were quickly into their stride, taking the lead though Baptista's header after Adebayor had left Carlos Bocanegra trailing in his wake on the right.
Baptista should have wrapped up the win for Arsenal within minutes but he missed two good chances after the visitors' defence had been completely opened up.
Cesc Fabregas was also denied by a superb diving save from Fulham keeper Antti Niemi, who was at his best again soon afterwards to push away Adebayor's header.
It was vintage Arsenal, but they were still without the cutting edge they have lacked all season.
Not that it seemed likely to matter as Fulham were struggling to get near their opponents' penalty area, let alone threaten an equaliser.
Arsenal took their foot off the gas after the break and it was as if they thought they had already done enough to secure the three points.
Lawrie Sanchez's side did little to suggest anything different until Davies scored a goal out of nothing with 12 minutes left.
Lehmann came out to the edge of the box to punch away a deep cross but was horrified when the ball dropped to Davies who instantly lobbed it over his head and into the corner of the net.
That gave the Cottagers hope and, but for a fine save from Lehmann to deny Michael Brown, they would have taken the lead soon afterwards.
Instead they saw the points slip away as Arsenal belatedly resumed control.
First Adebayor majestically strolled through the Fulham defence before slotting a precise shot past Niemi.
And after Hleb was brought down in the area by Moritz Volz, Gilberto confidently stroked home the Gunners' third goal from the spot.
The win keeps Arsenal's hopes of finishing third alive but Fulham are now without a victory in 10 Premiership games and are in the thick of the relegation dogfight.
Arsenal manager Arsene Wenger:
"We create more chances than anyone in the league but we don't score as many and that tells you we waste chances.
"We were great in the first half but sat back in the second and were a little bit poor. But we came back and showed our quality late on.
"Our season is not over. We want to finish third, show respect to the fans that come every week and we have a responsibility to the other teams too to put on performances."
Fulham boss Lawrie Sanchez:
"I think we were a bit naive - a point would have been fantastic but we just got a rush of blood to the head after the equaliser and went hell for leather looking to seal survival on the day.
"We got punished by a quality Arsenal attack but that's football. It can be very cruel.
"We have got two games - one at home - and we have got a chance to show our fans what we are made of - and that means stringing two halves together of good football, which I know we can do."
Arsenal: Lehmann, Eboue, Toure, Gallas, Clichy, Hleb, Fabregas, Silva, Diaby, Julio Baptista (Denilson 71), Adebayor.
Subs Not Used: Almunia, Senderos, Djourou, Hoyte.
Booked: Silva, Eboue.
Goals: Julio Baptista 4, Adebayor 84, Silva 87 pen.
Fulham: Niemi, Rosenior (Volz 68), Knight, Christanval, Bocanegra, Davies, Brown, Diop, Jensen (Dempsey 59), Radzinski, McBride (Helguson 59).
Subs Not Used: Lastuvka, Montella.
Booked: Brown, Bocanegra, Helguson, Volz.
Goals: Davies 78.
Att: 60,043
Ref: M Clattenburg (Co Durham).
The Gunners started brightly and were soon ahead when Julio Baptista headed home Emmanuel Adebayor's early cross.
Arsenal should have wrapped up victory long before Simon Davies lobbed Fulham level after Jens Lehmann's mistake.
But with six minutes left Adebayor slotted home to make it 2-1 before Gilberto scored from the spot after Alexander Hleb was fouled in the area.
The scoreline was slightly harsh on Fulham but, in truth, they only had themselves to blame for failing to make a game of it until the closing minutes.
There was a minute's applause before the game in honour of the late former Arsenal and England midfielder Alan Ball, as well as well as for Arthur Milton, who had played both football and cricket for England.
And the Gunners were quickly into their stride, taking the lead though Baptista's header after Adebayor had left Carlos Bocanegra trailing in his wake on the right.
Baptista should have wrapped up the win for Arsenal within minutes but he missed two good chances after the visitors' defence had been completely opened up.
Cesc Fabregas was also denied by a superb diving save from Fulham keeper Antti Niemi, who was at his best again soon afterwards to push away Adebayor's header.
It was vintage Arsenal, but they were still without the cutting edge they have lacked all season.
Not that it seemed likely to matter as Fulham were struggling to get near their opponents' penalty area, let alone threaten an equaliser.
Arsenal took their foot off the gas after the break and it was as if they thought they had already done enough to secure the three points.
Lawrie Sanchez's side did little to suggest anything different until Davies scored a goal out of nothing with 12 minutes left.
Lehmann came out to the edge of the box to punch away a deep cross but was horrified when the ball dropped to Davies who instantly lobbed it over his head and into the corner of the net.
That gave the Cottagers hope and, but for a fine save from Lehmann to deny Michael Brown, they would have taken the lead soon afterwards.
Instead they saw the points slip away as Arsenal belatedly resumed control.
First Adebayor majestically strolled through the Fulham defence before slotting a precise shot past Niemi.
And after Hleb was brought down in the area by Moritz Volz, Gilberto confidently stroked home the Gunners' third goal from the spot.
The win keeps Arsenal's hopes of finishing third alive but Fulham are now without a victory in 10 Premiership games and are in the thick of the relegation dogfight.
Arsenal manager Arsene Wenger:
"We create more chances than anyone in the league but we don't score as many and that tells you we waste chances.
"We were great in the first half but sat back in the second and were a little bit poor. But we came back and showed our quality late on.
"Our season is not over. We want to finish third, show respect to the fans that come every week and we have a responsibility to the other teams too to put on performances."
Fulham boss Lawrie Sanchez:
"I think we were a bit naive - a point would have been fantastic but we just got a rush of blood to the head after the equaliser and went hell for leather looking to seal survival on the day.
"We got punished by a quality Arsenal attack but that's football. It can be very cruel.
"We have got two games - one at home - and we have got a chance to show our fans what we are made of - and that means stringing two halves together of good football, which I know we can do."
Arsenal: Lehmann, Eboue, Toure, Gallas, Clichy, Hleb, Fabregas, Silva, Diaby, Julio Baptista (Denilson 71), Adebayor.
Subs Not Used: Almunia, Senderos, Djourou, Hoyte.
Booked: Silva, Eboue.
Goals: Julio Baptista 4, Adebayor 84, Silva 87 pen.
Fulham: Niemi, Rosenior (Volz 68), Knight, Christanval, Bocanegra, Davies, Brown, Diop, Jensen (Dempsey 59), Radzinski, McBride (Helguson 59).
Subs Not Used: Lastuvka, Montella.
Booked: Brown, Bocanegra, Helguson, Volz.
Goals: Davies 78.
Att: 60,043
Ref: M Clattenburg (Co Durham).
Comment