Dean Smith’s side kicked off at Villa Park languishing seven points from safety, but Egypt winger Trezeguet scored twice to keep them in with a chance of avoiding relegation.
Villa’s first win in 11 league games lifted them into 18th place, within four points of fourth-from-bottom Watford with three games left.
Second-bottom Bournemouth will go one point above Villa if they beat Leicester later on Sunday.
Villa face Everton, Arsenal and West Ham in their last three matches as they battle to avoid an immediate return to the Championship.
Smith’s men got an early stroke of luck when Palace defender Mamadou Sakho had a goal ruled out by VAR.
Sakho got on the end of Luka Milivojevic’s free-kick but a check revealed the ball had gone into the net off the arm of the Palace defender.
Villa snatched the lead four minutes into first-half stoppage time.
Conor Hourihane’s free-kick from the left evaded everyone and Trezeguet came in at the back post to side-foot beyond Vicente Guaita.
It was Palace’s turn to be saved by VAR early in the second half.
Referee Martin Atkinson pointed to the spot after Jack Grealish appeared to be fouled by Patrick Van Aanholt, but a further check overturned the decision.
Villa got their crucial second goal in the 58th minute.
Hourihane nodded the ball forward after John McGinn’s cross was only half cleared and Trezeguet was on hand to slot home.
Palace striker Christian Benteke was sent off for violent conduct after the final whistle.