The 26-year-old Alfa Bodyworks rider from Dublin, who only arrived in South Africa on Wednesday, clocked a time of 2:21:06 on the relatively flat 102km ride through the Cape Winelands to claim this year's first yellow jersey.
He was followed home by 94.7 Cycle Challenge champion Brendon Davids and BCX's Calvin Beneke.
The day's outcome saw most of the general classification favourites finish behind in the main peloton, leaving them with some work to do when the tour resumes tomorrow with the 26km Buffet Olives individual time-trial.
Lavery only returned to professional cycling last year after a two-year hiatus and was thrilled to get his adopted team a win in South Africa's premier road stage race.
"We got away early on and I didn't do a lot of work as we have Jayde Julius for the GC," a jubilant Lavery said afterwards.
"It is just my second race of the year, but I think it is a good indication of my form."
Lavery said he knew the run-in to the finish after competing in last year's tour and wanted to make sure he entered the chute first.
"The attacks started relatively far out. I just waited and waited for the finish as I knew it was a little bit of a headwind.
"When I went, I went hard and they weren't able to come around me. I think I maybe won by about three bike lengths."
Lavery said the attacks started within the first 20 kilometres.
"We were still on the main road when the breaks started going. Normally I don't need to be in the breakaway, but I was at the front of the peloton when the final break formed.
"It went away really easy because most of the top teams were represented. And it was up to them to ride hard.
"There were four riders from Dimension Data and three from BCX riding for general classification and I was just able to stick with the attacks."
The former Cofidis and Synergy Baku rider said he was uncertain of how the time-trial would go and was happy, for now, to bask in the glory of today's victory.
"This is what Alfa Bodyworks got me here for and I'm happy to repay their faith in me."
Lavery, a former U23 national champion and bronze medallist in the team pursuit at the 2010 Commonwealth Games, said he had not been in top condition in last year's Tour of Good Hope.
"I have managed to pick up on my fitness this year and my power output is probably 80 watts better."
Bestmed-ASG's An-Li Kachelhoffer won the women's race in 3:01:09 by half a wheel after getting the better of Namibian Vera Adrian (Dorma Karma) in a lengthy sprint finish.
Spur's Ariane Luthi, who placed third overall last year after winning the title in 2015, was third on the day.
The 29-year-old Kachelhoffer, from Paarl in the Western Cape, said she took something of a gamble when she started the sprint from a long way out.
"It must have been about 300 to 350 metres out, but there was a bit of chaos ahead of us with a tumble on the line and I knew I had to get to the chute first.
"It may have been a mistake and it was very close with Vera, but sometimes you have to take a gamble. A win is a win and it's better being in the front than stuck in the bunch at the back."
She said she and teammate Chante van der Merwe were part of a group of eight that went clear at the 15km mark.
"But the bunch caught up with us and I knew it was always going to be hectic going into the sprint, especially if you don't know the riders all that well."
Kachelhoffer said she had no great expectations going into the time-trial.
"I will just be aiming to limit the damage tomorrow and then we will review the situation going into the later stages."
She said they were firmly focused on the overall win.
"With our sponsors linked to the event, we really want to do well to give something back."
The Bestmed Tour of Good Hope, which is presented by the City of Drakenstein and Scicon, finishes at the Taal Monument above Paarl on Friday.
Results and general classification:
La Paris to La Paris, Paarl, 102km
1 Philip Lavery 2:21:06
2 Brendon Davids 2:21:06
3 Calvin Beneke 2:21:07
1 An-Li Kachelhoffer 3:01:09
2 Vera Adrian 3:01:09
3 Ariane Luthi 3:01:10
1 Jacques van Staden 2:37:44
2 Jaco Cronje 2:37:44
3 Stefan Oberholzer 2:37:44
1 Jean-Pierre van Tonder 2:40:36
2 Erich Meintjies 2:40:36
3 Moolman Welgemoed 2:40:36
1 Paul Kraus 2:43:30
2 Thorsten Riedel 2:46:26
3 Andries Duminy 2:46:26
1 Zaheer Rudman 2:36:43
2 Kelson da Cruz 2:36:43
3 Wayne Southgate 2:36:43
Caption: Irishman Philip Lavery (Alfa Bodyworks) celebrates his win in the 102km opening stage of the Bestmed Tour of Good Hope road race, which started and finished at the La Paris Estate near Paarl today. Photo: Robert Ward