Keane, who scored twice in Ireland's 3-0 friendly win over Canada on Tuesday, beat his marker and fired low into the net after 81 minutes to extend Villa's stay in the English Premier League relegation zone.
Swedish striker Marcus Allback gave Villa the lead with a header after 66 minutes. But 20-year-old Rohan Ricketts levelled for Spurs in the 78th-minute with a raking drive on a sodden White Hart Lane surface and Keane completed the job.
The defeat meant Villa remained 18th in the 20-team league on 11 points. Spurs jumped four places to 12th on 15 points.