The victory extended Eala's winning run to seven matches, with her current streak having started during her historic campaign at the DC Open.
McNally looked set to take control early after racing into a 3-1 lead, but Eala responded emphatically by claiming the next five games to take the opening set. The American had arrived in Toronto full of confidence after eliminating reigning Wimbledon champion Linda Noskova in the previous round.
Eala moved 3-2 ahead in the second set before requiring a medical timeout, during which her right ankle was taped. McNally subsequently strung together two games and later fought back from 4-5 down, when Eala had match point, to win three straight games and force a decider.
The American again appeared in command after going 4-1 up in the final set, but Eala mounted another comeback. McNally reduced the gap to 5-4 after falling behind, yet Eala stayed composed to complete a hard-fought triumph.
"I think I survived that one, it was so tough," Eala said.
"It's one of those matches that I really could have gone either way. I think it was really down to details and a little bit of luck. So, give her her flowers guys, it was a really great match."
"I mean these two weeks have been incredible for me. Just so many extreme emotions and I'm doing my best to power through and be professional and do what I know how to do and to play in front of you guys, it's amazing," Eala added.
"So, I mean the motivation to come here and play another match, everything just becomes so much more emotional guys."
Eala now faces world No. 14 Belinda Bencic in the Round of 16.