WATCH the ATP Tour LIVE & ONLY on beIN SPORTS | available via Foxtel, Kayo Sports, Fetch TV & beIN SPORTS CONNECT
Karatsev stunned world number one Novak Djokovic on Sunday to reach the final, though the Russian fell just short of claiming another scalp as he slipped to a 6-1 3-6 7-6 (7-0) defeat to Berrettini.
Second seed Berrettini could not take a first championship point in a third set that went the distance, but he held his nerve to add to his previous title triumphs at the Swiss Open, Hungarian Open and Stuttgart Open.
Berrettini held serve throughout the first set and broke his opponent in the fourth and sixth games to grab an early foothold in the contest.
But Karatsev, 18 places below world number 10 Berrettini in the ATP rankings, hit back in the second set to pave the way for a tense decider in Belgrade.
The big-hitting pair, competing against each other for the first time on the tour, managed a break of serve each before Italian Berrettini had match point in a gruelling 12th game.
While Berrettini was denied by Karatsev on that occasion, the 25-year-old powered through the tie-break to complete his impressive return to form.
"This title is for my family. This is the first time that they are actually here to see me win the trophy even though it's my fourth one," Berrettini said in his on-court interview.
"This is a special one. We came a long way since I was a kid and they were bringing me everywhere, so I think they deserve to see this kind of tennis and this kind of level. I really love them.
"It's been a pleasure being here. I came here not with the best feelings. I came back from an injury and it's never easy to come back and play this kind of level, this kind of tennis."