The homegrown midfielder struck three minutes into the second half to earn the Hammers their first home win over their capital rivals in 13 years.
Michail Antonio showed West Ham's attacking ambition early on with a 60-yard run down the right wing, with his pass inside eventually leading to a chance for Mark Noble who scuffed his 20-yard effort straight at Bernd Leno.
Otherwise it was Arsenal who started the stronger, with Alexandre Lacazette forcing a 13th-minute save out of Lukasz Fabianski with a low shot, after his driving run from Alex Iwobi's pass had taken him beyond the penalty spot.
The Frenchman had another sight of goal moments later but could not keep his header down from a cross from Pierre-Emerick Aubameyang, who would have had a shooting opportunity himself with a better pass from Matteo Guendouzi.
West Ham grew into the game after the opening 20 minutes, with new signing Samir Nasri instrumental in much of their attacking play. The playmaker had a chance to score against his former club when he dragged wide following a one-two with Marko Arnautovic.
Nasri's layoff teed up Felipe Anderson for a piledriver which had Leno beaten but flew just wide, and Guendouzi came equally close for Arsenal at the other end on 35 minutes, rustling the side-netting with a shot from 25 yards out.
The best chance of the first half fell to Rice, who glanced a header from Anderson's corner wide of the far post, but he did not have to wait long to make amends with his first Hammers goal within three minutes of the restart.
Arsenal failed on several occasions to clear from a set piece and were made to pay as Rice showed admirable technique and composure to bend the ball beyond Leno from 15 yards out, Nasri registering the assist on his first Premier League appearance since August 2016.
The Hammers had not kept a top-flight clean sheet at home since September's stalemate with Chelsea and their defence suffered a couple of nervy moments in the aftermath of the goal, a slack pass from Pablo Zabaleta gifting the ball to Guendouzi who shot wide from the edge of the box.
Fourteen-goal top-scorer Aubameyang was on the periphary for much of the game but did have a couple of chances just after the hour mark, heading over from Aaron Ramsey's back-post cross and blazing high after being released into the box by Sead Kolasinac's infield pass.
Arsenal did enjoy a 10-minute period when they were knocking on the door for an equaliser, as Iwobi fired a left-footed shot just past the post and Guendouzi had another go from distance, albeit straight into the safe hands of Fabianski.
Nasri enjoyed an impressive debut, linking up well with West Ham's forward line, but he may not be teammates with Arnautovic for long, with the Austrian appearing to wave goodbye to the home fans as he was substituted in the second half, amidst talk of a move to China.
The Gunners did have the ball in the net twice in the second half, but both efforts were disallowed for clear offsides against Kolasinac, and they largely went down with a whimper as they failed to score for the first time in 20 league games.
WEST HAM (4-2-3-1): Fabianski; Zabaleta, Ogbonna, Diop, Cresswell; Rice, Noble; Antonio (Obaing 82'), Nasri (Snodgrass 71'), Anderson; Arnautovic (Carroll 71')
ARSENAL (3-4-1-2): Leno; Sokratis, Koscielny, Mustafi (Ramsey 59'); Maitland-Niles (Bellerin 69'), Guendouzi, Xhaka (Torreria 59'), Kolasinac; Iwobi; Lacazette, Aubameyang