In the final round, which ended with a double bogey, Karlsson shot 5-under 67 to finish at 25-under 263.
With the victory, he likely cemented a spot on the European Ryder Cup team.
"I pretty much felt like I was in control of what was happening out there and it felt fantastic," said Karlsson. "As regards the Ryder Cup, I'll probably get it in the way it looks now and that would be fantastic to be in it."
Charl Schwartzel (67) of South Africa and England's Lee Westwood (69) tied for second place at 21-under 267.
Dennis Rodman pledges to end trips to North Korea
Senate Democrats to pull all-nighter on climate change