The Tigers booted six majors in their best opening quarter of the year and held the Cats at bay to post a 16.6 (102) to 11.12 (78) victory at the MCG on Friday night.
Richmond (3-1-5) have now won consecutive games for the first time in 2023 after ending a five-match losing streak in round eight.
But the latest triumph came at a cost, with midfielder Jacob Hopper substituted out of the game with a left calf muscle injury during the third quarter.
Cotchin returned after a week out of the Tigers' side and kicked three goals in his biggest tally in seven years, offering an important contribution at half-forward.
Martin booted four from 19 touches and Tim Taranto starred again with game-high tallies of 28 disposals, 12 tackles and six clearances.
Jayden Short (26 touches), Liam Baker (21) and Daniel Rioli (23) were all busy, while Dion Prestia celebrated his 200th game in style with 19 disposals and a goal.
Jack Riewoldt and Rhyan Mansell booted two each.
Tom Stewart was jeered by a contingent of Tigers fans in the 58,141-strong crowd still angry about the Geelong star flattening Dion Prestia in an ugly incident 11 months ago.
The Cats' stand-in captain stepped up in the absence of injured skipper Patrick Dangerfield and had 24 disposals in a solid display.
But Geelong lacked spark, with Dangerfield one of eight premiership players missing through injury or suspension, and suffered their first defeat since round three.
Tom Hawkins kicked three goals from 11 disposals and had two goal assists in a tough battle with Richmond defender Noah Balta (17 touches, 11 intercepts).
Isaac Smith had 23 disposals and kicked a brilliant second-quarter goal on the boundary line.
Richmond fielded more premiership players than Geelong - 15 to 14 - despite their most recent flag coming three years ago.
Friday night's result was the Tigers' first win over the Cats since the 2020 grand final.