Phil Bardsley fired Sunderland into a 12th-minute lead at Goodison Park with a long-range strike but Cahill equalized 11 minutes later.
Nikica Jelavic's header from Leighton Baines' cross was going wide, but Cahill nodded the ball on past goalkeeper Simon Mignolet.
Everton was frustrated in its search for a winner, with Mignolet denying John Heitinga and Jelavic late on.
"The equalizer knocked us back, we lost a bit of confidence with it," Sunderland manager Martin O'Neill said. "There was a big surge from the home crowd.
"I thought the second half could have gone either way but they pressed us more towards the end of the game. I am delighted we are still in the hat, I probably would have taken that at the start of the game."
Later Saturday in the cup, Tottenham hosts Bolton, while Chelsea faces Leicester and Liverpool takes on Stoke on Sunday.
The quarterfinals have reduced the Premier League program this weekend — and Fulham will have wished it had not played after going down 3-0 to Swansea.
On-loan Hoffenheim midfielder Gylfi Sigurdsson scored in each half to give Swansea a third successive league win.
The Iceland midfielder nodded in the opener in the 36th after Scott Sinclair had flicked on the ball from Wayne Routledge's cross.
Sigurdsson's second goal came in the 66th after playing a one-two with Routledge.
Joe Allen wrapped up the south Wales club's victory in the 77th after Philippe Senderos inadvertently gave the ball to Sinclair.
Swansea moved up to eighth, while Fulham dropped to 11th.
West Bromwich Albion was held to a 1-1 draw by bottom-place Wigan.
James McArthur put Wigan ahead at the start of the second half, but Paul Scharner equalized in the 65th.