The 11-cap England midfielder laid on Sunderland's other goal as Gus Poyet's men drove to a comprehensive win at Craven Cottage.
Goals from Johnson and Ki Sung-Yueng had Sunderland in total control at the break, before Steve Sidwell headed his fifth of the season for Fulham after the turnaround.
Johnson had laid on Sunderland's second for Ki, before the South Korean returned the favour for the Black Cats' third.
Swansea loan man Ki's fine slide-rule pass allowed Johnson to kill off the game, and the 26-year-old delivered as Sunderland claimed their first league win in three attempts.
The Sunderland-born winger then slotted a penalty in the dying stages after Philippe Senderos fouled Jozy Altidore.
Poyet's side had seen off Carlisle and Manchester United in cup action since the turn of the year, but badly needed a Premier League win.
Two smart Johnson free-kicks had Sunderland in control, the first a curler into the top corner that David Stockdale could not tip clear.
Johnson's second set-piece allowed Ki to fire home via Senderos' deflection.
Dimitar Berbatov wasted two chances in the first 10 minutes as Fulham fired out of the blocks, but the impetus yielded neither reward nor control.
Clint Dempsey could offer minimal impact as Fulham's influence waned, with regimented Sunderland's superior organisation paying dividend.
Lee Cattermole, so often derided as the wrong side of aggressive, nullified Adel Taarabt in a clear analysis-room ploy from Sunderland boss Poyet.
Fulham's immediate second-half riposte almost created a gritty contest, with Sidwell heading home Damien Duff's corner.
But the home side could not sustain any kind of comeback, and Sunderland powered to a fine result.
Berbatov had two gilt-edged chances in the opening 10 minutes as Fulham settled faster and brighter.
The big Bulgarian barged his way to a clear header from an early corner, only to add no power as he nodded into the ground.
Sascha Riether then robbed Wes Brown before drilling a fine low cross into the area.
Half a yard behind the play though, Berbatov was just not quite sharp enough to control.
The ball bobbled into touch on the other side of the field, and with it went Fulham's first-half opportunities.
Buoyed by avoiding early censure the Black Cats started to build a foothold.
Riether had to move smartly to cut out Fabio Borini's neat through-ball, denying Jack Colback a sight of goal, and Phil Bardsley's 20-yard shot was tipped away by Stockdale.
Steven Fletcher then headed over after John O'Shea nodded back across goal from a well-worked Johnson free-kick.
Riether's near-post flick on evaded any Fulham team-mate as the hosts battled to regain the ascendancy.
And Taarabt rejected the smart positioning of both Berbatov and Dempsey to try a tricky near-post effort that Vito Mannone was more than wise to.
Berbatov's acrobatic effort came to nought as well, as Fulham failed to generate any cast-iron opportunities in their second spell of dominance.
It was all too short-lived for Rene Meulensteen's men though, as Sunderland pinched the lead thanks to Johnson's curling free-kick.
Sidwell was incensed referee Mike Dean even awarded the foul, with Johnson capitalising on minimal touch to go down 20 yards out.
Stockdale will certainly feel he should have tipped Johnson's shot around his left post though, after getting a glove to the accurate effort.
Fulham's second-choice goalkeeper then spilled a Sunderland cross, only for Fernando Amorebieta to head Marcos Alonso's shot clear.
Sunderland's pressure told again when Johnson's low free-kick reached Swansea loan man Ki, who finished courtesy of a Senderos deflection.
Taarabt wasted a promising free-kick to open the second half, before Riether flashed the ball across goal, only for Mannone to claim.
Duff's pinpoint corner delivery dragged Fulham back into the contest though, with Sidwell sneaking free to nod home.
Senderos had to mop up as Stockdale mad a brave call to come out of his area for a clearance, only for Fletcher to put him under pressure.
The match opened up with both sides sensing their time to strike.
And Sunderland made the most of a lightning break to steal control again.
Racing through a sparse midfield with Fulham over-committed, Ki bided his time and threaded a superlative ball through to the onrushing Johnson.
The former Manchester City midfielder slotted past the motionless Stockdale to reassert Sunderland's dominance.
Against the run of the second half maybe but not the overall contest.
And with time running out Johnson rolled a penalty past Stockdale, after Senderos left a leg hanging out to take down Altidore.