The visitors were missing four key players for this game, including Andy Johnson who suffered a dislocated shoulder in the first leg after a horror challenge, and the home side dominated as a result.
Their pressure finally paid off in stoppage time when club captain Martin Kushev headed in to break Fulham's stern resistance.
And the hosts could have stolen the place in the group stages on away goals had Nikolai Zhilyaev kept his composure from close range instead of firing over a gilt-edged chance.
The Cottagers showed little of the guile and ability that won them the first leg so comfortably but they did just enough to ensure progression.
Indeed the Russians hogged all the best chances throughout as Erik Nevland was left hopelessly isolated up front for the London side.
Perm could have scored after just 20 minutes but Vitali Grishin failed to test Mark Schwarzer when well placed.
Grishin then combined superbly with Georgi Peev and Kushev to release Carlos, but his drilled strike was brilliantly saved by Schwarzer.
The introduction of Diomansy Kamara after an hour began a small comeback for Roy Hodgson's side in which Zoltan Gera and Dickson Etuhu could have both put the tie beyond their hosts.
In all it was more about the result than the performance and Fulham can now look forward to a Europa League adventure against, hopefully for them, more glamourous opposition.
Fulham: Schwarzer, Pantsil, Hangeland, Hughes, Kelly, Gera, Etuhu, Baird, Duff, Riise, Nevland.