Cavalleri finished with a 20-under 272 total on the Tres Marias course and earned $195,000. She had seven birdies in her bogey-free final round in light rain.
Ochoa, the 2006 winner playing her first tournament as the No. 1 player in the world, shot a 68. Granada, also second last year, also finished with a 68.
A crowd of thousands, including Mexican President Felipe Calderon, crowded round the 18th hole to cheer Ochoa, who closed with a birdie to shouts of 'Mexico! Mexico!' and 'We love you Lorena!'
Cavalleri took the lead with birdies on Nos. 5-7, forcing Ochoa to take a more aggressive approach. The Mexican star pushed hard, but missed several birdies. She lost a ball on the 15th, but came back to par the hole.
Pat Hurst shot a 70 to finish fourth, five strokes back at 15 under. South Korean rookie Na On Min (72) followed at 13 under.
Stacy Prammanasudh, the Fields Open winner in Hawaii in February, closed with a 70 to finish at 12 under. Prammanasudh began the day well, birdieing six of her first 10 holes, but then stumbled with a bogey on the tricky 13th, followed by a double bogey on the 14th and a bogey on the 18th.
Ochoa topped the world rankings with 12.84 points, 0.14 points ahead of Annika Sorenstam, news that sent shockwaves south of the border.
'All the Mexicans are very proud of her,' Calderon said at the awards ceremony. 'Lorena represents the Mexico we want to be. The Mexico that cannot be beaten; the Mexico that fights; the Mexico that opens paths in the world; the Mexico that wins.'
Calderon handed the cup to Cavalleri, who greeted it with a kiss.
'I'm very happy to win this tournament in Mexico,' she said. 'To me, it is very similar to Italy, so it's like I'm winning at home.'