The Black Cats had already spurned three gilt-edged opportunities in the first half before Adam Johnson's half-volley put them in front in first-half stoppage-time.
The visitors looked to be hanging on for a crucial victory before two goals in three late second-half minutes turned the game in Everton's favour.
The result means Sunderland have won just once this season and, although O'Neill was clearly disappointed, he was quick to praise his players after the game.
"We were absolutely brilliant in the first half," he told Sky Sports. "We created a number of chances in the game. We've gone in 1-0 at half-time but it should have been three.
"We were obviously going to be put under pressure in the second half. I thought we were coping manfully with that. But Everton are very strong and very resilient, they keep hammering away.
"They got a break and got the equalising goal and then got a real decent break for their winning goal.
"We played a side here who are challenging for the Champions League, but we have come to Goodison Park here and played brilliantly."
O'Neill also revealed his frustration at the display of referee Lee Mason, feeling that some key decisions did not go in his side's favour.
He also reiterated his belief that the players will soon turn the corner, adding: "We were standing very firm. We were coping very well with the pressure.
"Of course, as it gets more intense little decisions here and there might go against us and we had one or two today that I'm very unhappy with.
"I think it is epitomised by Danny Rose's booking at the end of the game for diving. It is an extraordinary decision.
"We have been beaten today and that's a major blow. We should have got something and we have taken nothing, but things will turn."