Former Reds striker Leon Clark netted what proved to be the winner, with his first touch after coming off the bench, two minutes into the second half.
The result leaves John Yems' side third-from-bottom in League Two, having taken four points from five games.
Crawley had the better of the first half. Tyler Frost saw his low shot well saved by Gas stopper James Belshaw, before the 22-year-old reclaimed the ball and crossed to the returning Tom Nichols, who headed wide.
Just before the half-time whistle, Tony Craig outjumped two Rovers defenders to meet a Jack Powell cross but his header was well-taken by Belshaw.
The hosts made a change at the break, ex-Red Clarke replacing Aaron Collins, and it paid instant dividends.
And, less than two minutes after coming off the bench, Clarke planted a header past Glenn Morris from a delightful cross from Antony Evans.
Crawley threw on forwards Kwesi Appiah and Ashley Nadesan as they went in search of an equaliser.
And Nadesan almost had an instant impact. An excellent drilled pass from Powell found the striker who unleashed an effort that was acrobatically kept out by Belshaw.
Nick Tsaroulla then delivered a floated ball into the box for Sam Ashford but his diving header flew over the crossbar.
New striker Alex Battle made his debut off the bench with five minutes to go as the Reds continued to press.
But the visitors couldn't find the winner, as their search for a first away point of the season continued.
Crawley Town: Morris, Davies, Francomb, Craig, Tsaroulla, Powell, Hessenthaler, Payne, Frost (Appiah 67), Ashford (Battle 85), Nichols (Nadesan 68). Unused: Nna Noukeu, Gallacher, Khaleel, Bansal-McNulty.
Referee: Ben Speedie