Don't even bother with Garen. Anything Garen can do, Rumble can do ten times better, and still be useful by the end of the game. Garen them just becomes an overglorified kser, while Rumble creates AoE CC and damage.
That being said, Olaf needs to be able to outpoke the individual to win in early laning. Against Garen, that might not be possible, due to higher early burst and better passive regen. But again, that being said, Olaf rapes the proverbial face in early, mid, and late games in most situations. So Olaf is definitely the stronger choice.