Richards made the step up from Rovers' youth team in February 2010 and has already scored 10 goals this season, earning him a further two years at the Memorial Ground.
Clarke, who is currently on loan at Evo-Stik League Southern side Clevedon Town, has battled his way through injury to earn a 12-month deal.
Rovers boss Mark McGhee told the club's official website: "Eliot is a young player who has proven that he has potential. He has got goals, he has got pace and he has got skill - everything a young striker should have. And he has now got to apply that and make football a lifestyle."
McGhee added: "I have liked what I have seen in Ollie. He is a slightly different sort of midfield player to what we have here.
"He has got a little bit of aggression, he goes past people and he has got a good eye, but he is young and needs a lot of work. I think there are signs in there that he is a good player."