Alonso finished just over two seconds ahead of the Mexican, who spent the latter half of the race closing down the double world champion.
Despite the win, Alonso was adamant that Ferrari need to improve if they are to repeat this success.
“This win will make us very happy but it doesn’t change our determination to improve the car,” he said. “We’re in a position we don’t want – fighting to get to Q3 and take points.”
Perez became the first Mexican in over 40 years to climb onto the podium, and reaped the rewards of changing to full wets ahead of the rest of the field.
As conditions worsened, it became clear that Perez was a real contender for victory as he and Alonso streamed away from the rest of the field.
However, Perez was disappointed not to win what he believed would have been a “clear victory” after going wide at the penultimate corner whilst chasing the Spaniard down.
“I was catching Fernando and I knew I had to get him soon because I was losing my front tyres. I touched the kerb, went on the dirty side of the track and lost the win,” he said.
Pole-sitter Lewis Hamilton again finished in third – a carbon copy of his performance in Australia, ahead of Mark Webber’s Red Bull.
It was also a good day for Kimi Raikonnen, whose comeback continues with fifth ahead of Bruno Senna’s Williams.
Senna’s sixth place – his best result to date – earned Williams eight points, eclipsing the five they scored in an entire season last year.
Paul di Resta was seventh, ahead of Jean-Eric Vergne and Nico Hulkenberg. Michael Schumacher claimed the last point after having his race compromised following contact with Romain Grosjean early in the race.
The infamous Malaysian weather played a key part in the race and led to the event being suspended after nine laps due to heavy rain. The restart was delayed by 50 minutes as the weather got worse.
The safety car was deployed on lap seven after Jenson Button radioed through to the pits that sector three “is like a lake”.
HRT’s Narain Karthikeyan was unusually the centre of attention twice after collisions with two of the grid’s biggest names, Button and Sebastian Vettel.
As the weather wreaked havoc with the standings, Karthikeyan found himself ahead of Button on track; the McLaren driver carried too much speed when trying to overtake the Indian and ended up needing to pit for a new front wing.
Vettel was furious after a collision with Karthikeyan shredded his left rear tyre late on, which cost the Red Bull driver points today after having to pit.
“Like on normal roads you have some idiots driving around and you have one here,” said Vettel.
Karthikeyan refused to name names in response to the criticism aimed in his direction, but acknowledged the difference in performance between his car and the frontrunners.
“We do not want to be a hindrance but this does not give them the right to bully you,” he said.
Pastor Maldonado again retired late on from a points paying position, with his Renault engine puffing out smoke on the penultimate lap.
Alonso is the surprise leader in the World Championship, five points ahead of Lewis Hamilton and 10 ahead of Jenson Button.
In the constructors’ standings, McLaren are leading the way by 13 points over Red Bull, with Ferrari third on 35.
1 Fernando Alonso (Spa) Ferrari 2hrs 44mins 51.812secs
2 Sergio Perez (Mex) Sauber-Ferrari 2:44:54.075
3 Lewis Hamilton (Gbr) McLaren 2:45:06.403
4 Mark Webber (Aus) Red Bull 2:45:09.500
5 Kimi Raikkonen (Fin) Lotus F1 Team 2:45:21.268
6 Bruno Senna (Bra) Williams 2:45:29.479
7 Paul di Resta (Gbr) Force India 2:45:36.224
8 Jean-Eric Vergne (Fra) Scuderia Toro Rosso 2:45:38.797
9 Nico Hulkenberg (Ger) Force India 2:45:39.704
10 Michael Schumacher (Ger) Mercedes GP 2:45:41.808
11 Sebastian Vettel (Ger) Red Bull 2:46:07.339
12 Daniel Ricciardo (Aus) Scuderia Toro Rosso 2:46:08.640
13 Nico Rosberg (Ger) Mercedes GP 2:46:10.405
14 Jenson Button (Gbr) McLaren 2:46:11.531
15 Felipe Massa (Bra) Ferrari 2:46:29.131
16 Vitaly Petrov (Rus) Caterham at 1 Lap
17 Timo Glock (Ger) Marussia at 1 Lap
18 Heikki Kovalainen (Fin) Caterham at 1 Lap
19 Pastor Maldonado (Ven) Williams at 2 Laps
20 Charles Pic (Fra) Marussia at 2 Laps
21 Narain Karthikeyan (Ind) HRT-F1 at 2 Laps
22 Pedro de la Rosa (Spa) HRT-F1 at 2 Laps
23 Kamui Kobayashi (Jpn) Sauber-Ferrari 46 Laps completed
24 Romain Grosjean (Swi) Lotus F1 Team 3 Laps completed
MORE: The latest football news
MORE: The latest tennis news