Brentford took a 3-2 lead in the second half and were on course for a huge three points, but Ollie Watkins's second of the match in the 81st minute meant that the points were shared.
Villa remain fourth in the Premier League table, three points ahead of fifth-placed Tottenham Hotspur, who have two games in hand, while Brentford have dropped to 16th and are only four points ahead of the relegation zone.
Brentford had the first opportunity of the match following a nervous start from Villa, and Bryan Mbeumo's free kick from a promising position was just wide of the home side's goal.
The visitors were the more dangerous side, with Mbeumo causing problems; the 24-year-old managed to pick out teammate Yoane Wissa inside the Villa box in the 22nd minute, but smart defending from Diego Carlos prevented the Bees from potentially taking the lead.
Villa did come close to scoring in the 26th minute, with a Lucas Digne corner causing all sorts of issues inside the Brentford box, but the away side's goalkeeper Mark Flekken just about managed to deal with the danger.
The hosts found it difficult to get going for long stages of the first half, but they did make the breakthrough in the 40th minute, with Watkins on the scoresheet once again.
The 28-year-old missed out against Manchester City last time out through injury, but the striker returned to the side on Saturday and scored his 23rd goal of the campaign in the 39th minute when he headed a cross from John McGinn into the back of the net via the post, with Leon Bailey making sure on the goal-line.
The hosts then doubled their lead early in the second period, with Morgan Rogers getting his name on the scoresheet for the first time in a Villa shirt, firing into the back of the net from inside the box after collecting a pass from Youri Tielemans.
Bailey had a half-chance to make it 3-0 in the 50th minute after finding space in a promising position, but his effort was kept out by Flekken.
Brentford were back in the match in the 59th minute, with Mathias Jorgensen finding the bottom corner from inside the box after Villa had failed to clear their lines.
Less than two minutes later, it was 2-2, with Mbeumo finding the back of the net with a smart volley after being found by Sergio Reguilon, who had broken clear down the left.
The Bees completed the turnaround in the 68th minute, and this time it was Wissa's turn to get his name on the scoresheet, with the striker converting another excellent cross from Reguilon.
Villa were stunned, but Emery's side did manage to respond in the 81st minute, with Watkins grabbing his second of the match, heading a deflected Bailey cross into the back of the net.
Ivan Toney, who did not start due to an injury problem, was sent on for Brentford in the 85th minute, as both sides went in search of the game's seventh goal at Villa Park.
Villa came close to snatching it late on, with Ezri Konsa and Digne both trying their luck, but Brentford's second-half comeback ultimately proved to be enough for them to claim a share of the spoils in an incredible match.