Evans, 29, won 6-4 7-6 (8-6) to set up a second-round match against Spain’s 18-time Grand Slam champion Nadal.
Evans won a 51-shot rally on his way to a break in the first game of the match, then survived two break points to edge a tight opening set in a hot Montreal.
After exchanging serves, Evans took his second match point in the tie-break.
Evans missed the first on De Minaur’s serve at 6-5, only for the 20-year-old Australian – who is ranked 38th in the world and has won two ATP Tour titles this year – to overhit a volley and give him another opportunity.
That left Evans serving for the match and the world number 53 sealed a tantalising meeting with Nadal when De Minaur hit a backhand long.
“It was so hot, I’m just happy to get through. I’m good physically so I never doubt myself but it is hard out here,” Evans said.
Spanish great Nadal, who is the top seed and defending champion at the ATP 1,000 event, received a first-round bye in his first tournament since losing to Roger Federer in the Wimbledon semi-final last month.
Evans missed out on the chance to play world number two Nadal at the All England Club when he lost to Portugal’s Joao Sousa in the third round.
In the men’s doubles, Britain’s Joe Salisbury and his American playing partner Rajeev Ram won 7-5 7-5 against the all-British pairing of Jamie Murray and Neal Skupski.