Rene Meulensteen's side started 2014 third bottom of the table following an embarrassing 6-0 loss at Hull on Saturday.
And the west Londoners looked up against it again when Mohamed Diame put West Ham ahead early in the first half at Craven Cottage.
But Steve Sidwell equalised and West Ham's Kevin Nolan was sent off before half-time, setting the stage for former Manchester United striker Berbatov to bag the winner midway through the second half.
Fulham climb to 16th, two points above the relegation zone, while West Ham remain second bottom and are now three points adrift of safety.
Meulensteen had reacted to the rout at Hull by making seven changes, among them the return of Berbatov and Adel Taarabt from injury.
Fulham's overhauled line-up made a purposeful start amid awful conditions as wind and rain lashed Craven Cottage, but they were soon undone as some weak defending allowed Diame to snatch the lead in the seventh minute.
Berbatov strayed offside and the resultant free-kick was floated long into the box where Diame was given the time and space to pick his spot and stab the ball home.
Fulham almost drew level when Modibo Maiga nodded Fernando Amorebieta's header off the line and the equaliser eventually arrived in the 32nd minute.
Damien Duff took a corner and Sidwell, arriving late with a good run, powered in the header.
The awful weather further deteriorated but the rain failed to dim Fulham's endeavour as Taarabt hit the post.
The turning point came in first half stoppage-time when Amorebieta and Nolan tangled.
Nolan took exception to being nudged and kicked out at Amorebieta, whose tumble to the turf convinced referee Mark Clattenburg to reach for the red card
It was the West Ham captain's second dismissal within a month after also departing early in the 4-1 defeat at Liverpool on December 7.
The second goal looked imminent as Irish winger Duff steered a shot just over the crossbar and was then denied by Jussi Jaaskelainen.
Fulham continued to pepper the opposition goal and Jaaskelainen was the saviour once more as he got fingertips to an attempt by Taarabt to turn it onto the woodwork.
West Ham were rocking and they finally cracked in the 66th minute when substitute Alexander Kacaniklic marauded down the left wing and found Scott Parker.
Showing superb awareness, Parker played the ball in to the unmarked Berbatov who was on target from six yards out.
What the stars mean:
★ Poor ★ ★ Promising ★★★ Good ★★★★ Very good ★★★★★ Exceptional