Rublev will now face Alexander Zverev in the decider, having ended Medvedev's bid for a Toronto-Cincinnati double.
Medvedev had never even dropped a set to his fellow Russian in four prior ATP Tour meetings and appeared to be on course for another dominant victory when he took the first set.
But the world No.2 clattered into a camera early in the second and all momentum was soon lost.
Medvedev complained about the positioning of the camera, claiming it had caused a hand injury and aiming a kick at the lens.
He swiftly called for treatment as his performance started to fall well below his lofty standards, with Rublev finally able to win a set after breaking in an epic 15-minute game.
A series of unforced Medvedev errors allowed Rublev to break again in the decider and seal a stunning 2-6 6-3 6-3 triumph.
Asked to reflect on finally toppling Medvedev, Rublev said: "It's always tough to play against Daniil and to beat him.
"I think it gives me a bit more confidence that I can play against him, I can compete against him. There are still so many things to improve, but it's like I've passed university."
The victory came as a relief, with Rublev believing he was unfortunate even to be trailing in the first set.
"Inside I was thinking, when I was 6-2, the score shouldn't be like this," he said.
"The points were really tight, some little outs, little mistakes, some good shots from Daniil. The score was not real [in] the first set.
"Even the third set, I won 6-3 but the match was so intense. You saw so many rallies, so many long rallies, and it was so tough.
"It was a super mental match, a super physical match, exactly like a chess match."
No.3 seed Zverev fought back from a double break down in the final set to progress to the final with a 6-4 3-6 7-6 (7-4) win over No.2 seed Stefanos Tsitsipas.
The epic match lasted two hours and 41 minutes, with Zverev responding strongly after appearing unwell to book his spot in the final against Rublev.
Tokyo 2020 Olympic Games gold medal winner Zverev had trailed 4-1 in the third set against Tsitsipas, but fought back with two breaks before winning in a tie-break.
"After I did the first break back I thought 'OK I have the chances'," Zverev said. "I felt like he was not serving bombs. I felt like I was always in the rallies but I was losing the rallies because I was a bit low energy, so I started being a bit more aggressive, a bit of the Novak mentality that I had against him at the Olympics as well."
Zverev has a 4-0 record against final opponent Rublev but he was wary of his opponent.
"Favourite or not, I think if you're in the final, there's no easy opponent," he said. "Today he played incredible beating Medvedev."