Substitute Danny Cadamarteri repaid Rob Kelly's faith in him by scoring a last-gasp equaliser to earn Leicester City a replay at Craven Cottage.
The former Everton star had been out of the game for six months after failing a drugs test while at Bradford City. The 27-year-old had been training with Conference side Grays Athletic before Leicester stepped in over the festive period to hand him a contract until the end of the season.
City tore into Fulham from the start with Levi Porter leaving Elliot Omozusi in his wake, before setting up Iain Hume whose low 15-yard effort flew just wide.
Fulham hit back through Heidar Helguson whose header was palmed over by Paul Henderson.
Then, from another Leicester corner, Danny Tiatto pulled the ball back to an unmarked Stephen Hughes who drove narrowly wide from eight yards.
Liam Rosenior offered the Londoners some respite with a 20-yard shot which flew just over, but it was Leicester that continued to create the better openings with Ian Pearce standing his ground to block Matt Fryatt's shot.
On 28 minutes hesitancy in the Leicester defence let in Moritz Volz but Henderson was alert to the midfielder's low drive.
Wayne Routledge then missed a superb chance on 37 minutes when he found himself clean through but, in his bid to round the keeper, he took the ball too far allowing the Leicester defence to race back and clear.
Leicester went close again when, first Alan Maybury weaved his way into the box only to shoot straight at the Fulham keeper, before a Fryatt header was blocked by a defender after more good work by Porter.
Then, at the end of an entertaining first half, Routledge floated a 25-yard free-kick over the bar.
Fulham furnished the first chance after the restart with Tomasz Radzinski flashing a shot just wide of the keeper's far post. Then Omozusi seemed certain to score on 55 minutes with a mazy run which took him beyond four Leicester defenders but he somehow contrived to side-foot wide from five yards.
With the game flowing from end to end it was Fulham that broke through on 69 minutes when Michael Brown picked out Brian McBride with a slide-rule pass. The American striker had time to crack a 12-yard angled shot beyond Henderson.
But Leicester were deservedly level on 80 minutes when substitute Cadamarteri crossed to the far post. Jan Lastuvka pushed Patrick Kisnorbo's header against the underside of the bar but couldn't prevent the ball from crossing the line.
Fulham regained the lead four minutes later when Radzinski ghosted beyond Gareth Williams and Gareth McAuley before laying the ball off for Voltz to fire low into the net.
That seemed enough for the Londoners but, deep in time added on, Porter pulled the ball back for Cadamarteri to hook home from 12 yards to earn Leicester a replay.