The Tigers had 17 more scoring shots than the Giants in the 11.20 (86) to 12.2 (74) victory, but flirted with disaster in a fashion unbecoming of a finals aspirant.
Richmond registered six consecutive behinds in the final quarter, and GWS debutant Sam Schulz reduced their lead to seven points with five minutes remaining when he kicked a towering goal.
Connors replied with two telling majors, while spearhead Jack Riewoldt - a steadying influence in the third term when GWS mounted their first comeback - dished off handballs to help set up both goals.
Inaccuracy meant the visitors never established a comfortable buffer in the opening half despite dictating terms and, in the sixth minute of the third quarter, the scores were level after Dylan Shiel steered home his side's seventh goal.
With the ascendency teetering out of Richmond's control, Riewoldt grabbed the next two goals.
The 23-year-old, who was in doubt for the game with an ankle injury he iced every three hours this week, laid a textbook tackle on Chad Cornes and goalled from the resultant holding-the-ball free kick.
Shane Edwards then kicked two behinds before Riewoldt built his side's advantage to 17 points when he dribbled through a remarkable goal from the boundary line.
But Jeremy Cameron goalled after the three-quarter time siren, and the Giants' charge gathered pace early in the final quarter when Cameron reeled in a magnificent pack mark and kicked truly to cut the Tigers' lead to nine points.
In a match that failed to hit great heights - due mostly to the driving rain - Cameron and debutant Jonathon Patton bucked the trend with clean sets of hands.
Patton started quietly, but last year's No.1 draft pick found his touch in the 25th minute of the opening term.
The 19-year-old outmarked Tiger Matt Dea on the wing with great poise then, a minute later, had his first AFL goal when he snaffled another contested mark - judging the fall of a slippery ball better than a handful of others.
Cameron had four contested marks, while Patton had three - while the Tigers' combined tally was just seven.