Denis Cheryshev's swerving left-footer from the edge of the box had opened the scoring for Russian Federation in the 31st minute of normal time but an unmarked Andrej Kramaric headed in a cross from Mario Mandzukic eight minutes later to restore parity. It was his fourth goal of the tournament.
However, Russia found the resources to draw level again, substitute Alan Dzagoev holding up a free-kick for Fernandes to head home in the 115th minute.
Croatia were agonizingly close to scoring on the hour when Russia's defense failed to clear the ball and Ivan Perisic's shot hit the inside of the post but rebounded harmlessly across the face of the goal.
And it remains to be seen how quickly Croatia - whose President Kolinda Grabar-Kitarovic was watching from the stands in her country's colours - can recover from this draining night, having also been taken to extra time and penalties by Denmark in the last round.
Domagoj Vida made it 2-1 for Croatia 10 minutes into the second stanza with a fine header that sailed into the bottom corner.
Mario Mandzukic took advantage of Mario Fernandes' wayward positioning to burst in behind and set up Hoffenheim forward Kramaric to nod home his 10 global goal.
But after they were forced into extra time for a second time in the knock-out stage, England will be physically fresher when the sides meet in the Russian capital.
Changes from both sides disrupted the flow of the contest as the physical demands of the tournament took their toll.
Vida removed his shirt as he ran away in celebration, possibly thinking Croatia were heading through.
The teams then went back and forth in regulation, and neither could find the victor, sending the game into extra time.
When the deadlock was eventually broken, the source from which it came was an unlikely one.
The World Cup hosts were not given any chance prior to the kickoff of the Mundial but they surprised many right from their opening game when they pumped in five goals against Saudi Arabia.
Fernandes went from her to villian by dragging his spot-kick wide, before Luka Modric and Sergei Ignashevich exchanged successful penalties.
Fernandes' header sent the Fisht Olympic Stadium wild.