Gustav Lindgren svarade för två mål i första halvlek. Han gjorde 1-0 i den fjärde minuten och 3-2 i den 37:e.
Malmö hade vänt till 2-1 genom Gabriel Busanello och Erik Botheim. Ett självmål gav Häcken 2-2.
Sedan avgjorde Lindgren.
6 163 åskådare såg matchen. Häcken är fortsatt obesegrade i Allsvenskan efter sju omgångar.
– Det var för lätt att göra mål på oss idag, säger Malmös tränare Miguel Angel Ramirez efter matchen.
– Vi måste försvara bättre, vi måste vara mer aggressiva över hela banan.
Häckens lagkapten Mikkel Rygaard hade sagt inför matchen att laget varit taggat på tre poäng efter fyra kryss i rad.
Det fick de också. Häcken klättrar i tabellen medan Malmö tappar mark i toppstriden.