The 33-year-old Bulgarian attacker had been linked with a return to Tottenham but will spend the remainder of the 2013-14 season at the Stade Louis II
Claudio Ranieri's men beat off competition from Tottenham to sign the 33-year-old on a busy day of transfer activity for the west Londoners.
"I am both happy, excited and a little nervous to be honest I can not wait to start training with my new club and begin a new chapter in my career," he told Monaco's official website.
The Ligue 1 side moved for the former Manchester United man with star striker Radamel Falcao ruled out for the rest of the season after tearing his anterior cruciate ligament.
Monaco vice president Vadim Vasilyev added: "Dimitar will bring us all his experience and talent. His arrival is of course connected to Radamel Falcao's injury.
"He played in big clubs such as Manchester United and he's a big striker.
"We still have two competitions to play and he will be an asset with Emmanuel Riviere, Valere Germain and Anthony Martial. He has a different profile than our other forwards."
Berbatov, whose Fulham contract expires at the end of the season, has scored five goals in 19 appearances for the Cottagers this campaign.
He leaves the club lying 19th in the Premier League, just a point above bottom side Cardiff.