The South African completed a 3-under 69 in the rain-delayed third round, then closed with a 68 for a three-stroke victory over Scotland's Stephen Gallacher.
"I was a little surprised to win here after that," Oosthuizen said. "I thought I would be a lot more tired. My golf was a bit up and down in the morning at the end of the third round, but I settled down and played well later."
The 2010 British Open champion finished at 17-under 271 on Kuala Lumpur Golf and Country Club's West Course.
The tournament was sanctioned by the European and Asian tours.