Ashkan Dejagah's fierce shot canceled out David Stockdale's own goal to give the Cottagers hope, but they missed chances before the Toffees struck twice late.
Naismith and Mirallas were on target in the second half, while a shot from Naismith also led to Fulham goalkeeper David Stockdale inadvertently scoring on his own net as Roberto Martinez's men boosted their hopes of securing Champions League qualification.
The result was harsh on Fulham, which was excellent in the first half and looked to have sealed a deserved point when Ashkan Dejagah canceled out Stockdale's own goal.
|VIEW FROM CRAVEN COTTAGE
|By Harry Sherlock
"We're all going on a European tour!" sung the away fans after a hard-fought victory here at Craven Cottage and it may well be true.
Everton has put the pressure right back on Arsenal and Roberto Martinez can take many of the plaudits. Every one of his substitutes either scored or assisted a goal in the second half and this could prove to be a vital win come the end of the season.
For Fulham, however, this may well be season over. Some players sank to their knees at the final whistle and they look doomed.
It's a huge shame, as they performed admirably throughout.
But Mirallas produced a composed finish 11 minutes from time and Naismith added a third to ensure Everton moved within four points of fourth-place Arsenal with a game in hand.
Felix Magath's men are five points from safety with just six games remaining and will reflect on a game of missed opportunities as its Premier League fate hangs by a thread.
Fulham, which appealed for a penalty when Sylvain Distin appeared to handle in the box, threatened in the 13th minute as Brede Hangeland flicked on Holtby's corner, but Kasami was unable to steer his back-post header on target.
Magath showed faith in 17-year-old striker Dembele by handing him a start and the Frenchman underlined his promise with a perfectly measured throughball for Richardson, whose effort was saved by the legs of Howard.
Stockdale produced a carbon-copy stop to thwart Gerard Deulofeu at the end of a swift Everton counterattack, while Holtby and Dembele tested Howard with headers as the tempo continued to increase prior to halftime.
Martinez's side moved ahead with 51 minutes on the clock. Leighton Baines' corner eventually found its way to Naismith, on for the injured Ross Barkley, and his shot set in motion a chain of events that ended with Stockdale deflecting the ball into his own net.
The former Hull City loanee produced a stunning save to deny Romelu Lukaku just past the hour mark as Everton looked to take the game beyond Fulham, but the hosts were not a spent force and Dejagah netted an excellent equalizer, cutting in from the left before rifling past Howard at his near post.
With Fulham in the ascendancy, Howard denied Heitinga and Kasami in quick succession before Mirallas raced away to make it 2-1.
There was still time for Naismith to turn in a square pass from Baines and the Scot also hit the post from distance as Everton ultimately prevailed with a degree of comfort.