The Guardians made the deal -- and several other roster moves -- before a day-night doubleheader against the AL Central-leading Minnesota Twins.
Hedges took a foul tip off his protective mask last weekend and was showing concussion-like symptoms Monday despite passing all neurological tests. He didn't play in the series opener.
"He just wasn't himself," manager Terry Francona said.
Catcher Bryan Lavastida wasn't an option because he's dealing with a hamstring injury at Triple-A Columbus, so the Guardians sent cash to the Reds and brought back Leon, who played in 25 games with Cleveland in 2020.
Francona said his familiarity with the team's pitching staff made him an obvious choice.
"Most likely this is short term," Francona said. "We've all seen things change. So we felt like getting somebody our pitchers know hopefully will be kind of seamless. Sandy was here in spring training. He was here the year with COVID 2.0. There's a lot of familiarity there."
The well-traveled Leon started Game 1 of the doubleheader, which was won by the Guardians 3-2. Leon went 0-for-3 with a strikeout.
The Guardians also recalled reliever Anthony Castro and rookie left-hander Konnor Pilkington from Triple-A Columbus. Pilkington is starting the second game of the doubleheader.
Right-hander Ian Gibaut was designated for assignment.
The Associated Press contributed to this report.