Berbatov struck his ninth goal of the season on the stroke of half-time after the hosts had dominated possession without truly testing Asmir Begovic.
The volley was head and shoulders above the general quality of the match with Stoke forward Jonathan Walters missing a second-half penalty as Fulham moved to within a point of the Potters in the Barclays Premier League table.
Stoke were the first side to test the opposition goalkeeper as Peter Crouch dropped deep before threading a ball into the run of Walters, who forced Mark Schwarzer into a smart low save.
The hosts then took control of the remainder of the first half with Berbatov firing over the crossbar from six yards after being picked out by the returning Sascha Riether.
Bryan Ruiz had the ball in the back of the net after 11 minutes but was cautioned by referee Lee Probert for clearly using his hand to convert Damien Duff's free-kick.
Stoke were lucky to not be reduced to 10 men midway through the first half as Steven Nzonzi, who had taken a knock on the nose in an earlier collision with Berbatov, was booked for shoving Ruiz in the face.
Fulham remained on top and the opening goal finally came in first-half stoppage time as Ashkan Dejagah and Riether combined down the left with Riether's cross headed into the path of Berbatov by Robert Huth and the former Manchester United man smashed home a volley of the highest quality.
The visitors were presented with a great opportunity to equalise 10 minutes into a more even second half. Lee Probert awarded a penalty as Dejagah blocked Potters' debutant Brek Shea's cross with his arm but Walters hit a tame spot-kick that was easily kept out by Schwarzer.
Berbatov almost doubled his tally with another fantastic effort. The Bulgarian flicked the ball away from two defenders before firing in another volley with Begovic able to parry it away. Fulham survived to win just their second league game since New Year's Day.