Lowes, who switched from Yamaha to Kawasaki during the off-season to replace Honda-bound Leon Haslam, passed long-time race leader Rea on the penultimate lap and held off the five-time WSBK champion to win by just 0.037s.
It ends a losing streak dating back to the 2018 Brno race for the 29-year-old.
After winning the Superpole Race earlier in the day, Rea controlled the majority of the 22-lap contest, briefly losing the advantage to Yamaha's Michael van der Mark on the first lap before repassing on the second lap at Honda corner.
It wasn't until lap 10 that Rea relinquished the lead to the Ten Kate Yamaha of Loris Baz, which marked the opening salvo of a frantic scrap that involved multiple lead changes.
On two further occasions Baz was able to pass Rea only to lose out again, and on lap 15 the Frenchman ran wide at Stoner corner, dropping out of the lead fight.
Lowes briefly challenged teammate Rea at the start of lap 16 before Rea picked up the pace and tried to escape at the head of the field, with Lowes becoming embroiled in a scrap for second with former teammate van der Mark.
But by the start of the penultimate lap both Lowes and van der Mark had caught back up to Rea and passed the defending champion into Turn 1.
Rea immediately retaliated by passing van der Mark, but Lowes had been able to extend a gap of seven tenths and this proved sufficient for him to hang on to victory despite Rea reducing the buffer to virtually nothing by midway round the final lap.
Van der Mark found himself beaten to third on the last lap by the Ducati of Scott Redding, who spent much of the race circulating towards the rear of the lead group.
Baz was removed from podium contention when he went off-track at Stoner on lap 20 as he tried to clear Toprak Razgatlioglu's Yamaha, the Turkish rider suffering a terminal mechanical problem just as Baz tried to move around the outside.
Their misfortune promoted Chaz Davies (Ducati) to fifth ahead of the top Honda of Alvaro Bautista and star rookie Maximilian Schieb (Orelac Kawasaki).
Baz finally finished eighth, while the top 10 was completed by Sandro Cortese (Pedercini Kawasaki) and Tom Sykes (BMW), who was delayed on lap three in an incident with the Puccetti Kawasaki of Xavi Fores.
Leon Haslam endured another eventful race on the Honda, coming to blows with Michael Ruben Rinaldi's GoEleven Ducati at MG corner on the opening lap and crashing. The Briton was the last of the finishers in 12th, one place behind Fores.
|1||22|| Alex Lowes ||Kawasaki||22|
|2||1|| Jonathan Rea ||Kawasaki||22||0.037|
|3||45|| Scott Redding ||Ducati||22||0.849|
|4||60|| Michael van der Mark ||Yamaha||22||1.784|
|5||7|| Chaz Davies ||Ducati||22||4.278|
|6||19|| Alvaro Bautista ||Honda||22||4.322|
|7||77|| Maximilian Scheib ||Kawasaki||22||4.829|
|8||76|| Loris Baz ||Yamaha||22||6.172|
|9||11|| Sandro Cortese ||Kawasaki||22||11.057|
|10||66|| Tom Sykes ||BMW||22||17.204|
|11||12|| Xavi Fores ||Kawasaki||22||33.338|
|12||91|| Leon Haslam ||Honda||22||33.779|
|21|| Michael Ruben Rinaldi ||Ducati||14|
|54|| Toprak Razgatlioglu ||Yamaha||19|
|64|| Federico Caricasulo ||Yamaha||10|
|13|| Takumi Takahashi ||Honda||5|
|View full results|