Villanueva (7-4) had posted an 0-4 record over his five previous starts, but he struck out seven and walked only one in a six-inning performance against the struggling Rays.
Tampa Bay has lost five of its last six to fall 4 1/2 games behind the New York Yankees in the American League East.
Both of the Blue Jays' runs scored on a first-inning double by Kelly Johnson, who had two of Toronto's seven hits.
Matt Moore (10-8) suffered from a lack of run support and took the loss despite striking out seven over six innings.
Swim Week Miami Beach 2014 [PHOTOS]