To Happ's credit, he did not allow any further damage in the inning, as he struck out Jose Lobaton, then got Jose Molina and Ryan Roberts to ground out to end the inning.
Happ allowed one run on four hits and four walks with four strikeouts in 4 2/3 innings.
Jeff Niemann made his last spring appearance and stated his case to win the fifth spot in the Rays' rotation.
The 6-foot-9 right-hander retired the first eight batters before 5-foot-6 Peter Mooney singled to left. Mooney moved into scoring position by stealing second, but Niemann stranded him by getting Emilio Bonifacio to ground out to second.
Niemann got some help from Sam Fuld in the fifth when Mike Nickeas lined a ball down the left-field line that appeared to going for extra bases. But the Rays left-fielder, who had been nursing a tight right hamstring, sprinted to the line in time to make a sliding catch for the third out.
Fuld led off the bottom of the fifth to a nice ovation. He then slapped a ball to left that Rajai Davis made a diving catch on.
After a leadoff double in the seventh, Roberts was thrown out by Henry Blanco trying to steal third.
Niemann allowed two hits, struck out three and didn't walk a batter in six innings, lowering his spring ERA to 2.92.
A decision on the No. 5 rotation spot -- between Niemann and Roberto Hernandez -- is expected to be made Thursday. Hernandez allowed nine earned runs on Tuesday against the Phillies.
Fernando Rodney, in his first outing since winning the World Baseball Classic with the Dominican Republic, pitched a scoreless seventh inning with two strikeouts.
Yates replaced Rodney in the eighth. He gave up a singles to Ryan Langerhans and Nickeas, and an error on the latter allowed Langerhans to score and Nickeas to move to second. After Mooney was hit by a pitch, John Tolisano singled to load the bases.
An error by Kelly Johnson allowed everyone to be safe on Andy Burns' grounder to second, giving the Blue Jays a 2-1 lead. Two batters later, Rasmus hit a long homer to right to make it 6-1. Rasmus has two homers and seven RBIs this spring.
Aaron Loup earned the win after pitching a scoreless seventh. Jeremy Jeffress and Chad Beck each threw scoreless inning to close it out.
Up next: Right-hander Brandon Morrow will get the start as the team travels to Clearwater, Fla., to face the Phillies at 1:05 p.m. ET on Thursday. The game can be watched live on MLB.TV. Sergio Santos and Brett Cecil are also scheduled to pitch. Morrow (0-2, 7.80 ERA this spring) said he felt good his last time out, but he gave up five runs on eight hits and a walk in 5 1/3 innings against the Braves at Florida Auto Exchange Stadium.