Cheltenham goalkeeper Scott Brown turned Jayden Stockley's header over the crossbar in the 20th minute before Ashley Vincent shot wide at the other end four minutes later.
Veteran striker Jamie Cureton missed from a good position after half an hour, skewing wide of the near post with his left foot.
Jermaine McGlashan opened up space for a shot which was also off target, but Courtney Cameron should have done better for Torquay in the 40th minute, lifting an effort over the crossbar.
Torquay were the better side but their goalkeeper Martin Rice was called into action for the first time in the 41st minute, parrying Cureton's shot and during time added on, Vincent kicked Shamir Goodwin's effort off the goalline.
Rice denied Vincent with his legs, but the deadlock was broken 15 minutes from the end when Vincent's long throw fell to Richards just inside the box and he connected well with a left-footed volley into the bottom right corner.
Brown saved from Goodwin as Torquay tried to salvage a point, but Cheltenham held on for their fifth home victory of the season.