The 22-year-old ended with a total of 6887 points, 63 ahead of Barber (6824) while Margaret Simpson of Ghana took bronze with 6375 points in the multi-discipline event.
With her left ankle heavily strapped, a grimacing Klüft outpaced the valiant Barber down the home straight of the 800m to the rapturous delight of the Finnish crowd that have adopted the Swede as one of their own.
The race was won by British Olympic bronze medallist Kelly Sotherton, but her impressive run was not enough for her to move from fifth in the overall standings after her dismal performances earlier in the day in the long jump and javelin.
“I had a really great experience here and Eunice is a fantastic competitor,” said Klüft.
“After the accident in training, I thought what would happen. But this has given me hope to do even better in the future once I am injury free.”
In the opening event of the day, the long jump, Klüft and Barber both recorded season’s bests of 6.87 and 6.75m respectively.
Klüft’s best came on her first attempt in an all-or-nothing jump that saw her narrowly miss being red-flagged.
The France team lodged a protest, complaining that the jump should not have been allowed for a foul on the take-off board.
After reviewing the evidence, the IAAF’s Jury of Appeal determined that the event judges had made the correct decision and the protest was dismissed.
The result saw the Swede squash Barber’s two-point overnight lead after the 100m hurdles, high jump, shot put and 200m and regain top spot by 38 points.
But Barber, the 1999 world champion, cut back that deficit to just 18 points after the javelin, in which she threw 48.24m to Kluft’s 47.20m, albeit a season’s best for the Swede.
In the overall standings before the 800m, Klüft was top on 5906, followed by Barber on 5888 and Simpson in third on 5511.
The 23-year-old Ghanaian, bronze medallist in the 2002 Commonwealth Games, recorded a personal best of 56.36m in the javelin to overtake Sotherton, who will regret a day when she failed to perform to the best of her abilities.
Sotherton finished in fifth place overall behind Lithuania’s Austra Skujyte, whose season’s best of 48.82m in the javelin ensured her a healthy finish.