I don't think it's fair to base the standard of the league on the performance of two teams in one game. Ok United have dropped off since SAF retired, but that was always bound to happen, and things are finally starting to improve. Chelsea are arguably having one of their best ever seasons, not far off 2004-05, City have come back into form in the last few weeks, Southampton are still having one of their best ever seasons despite the last couple of weeks, West Ham are stunning everyone with their position in the league. I don't think the prem can compete with Barcelona and Real Madrid, but then has it ever been able to really? Players will nearly always choose to go to those two teams over any other simply because of their prestige, past and former success, history, facilities, etc.
Yes there are teams that are struggling, like Arsenal, Liverpool, Everton and Spurs, but I'd argue that most of those teams have either overachieved in the past or haven't really ever hit the heights anyway. For whatever reason Arsenal haven't really been the same team since the invincibles era in the early 2000s, Liverpool had an exceptional year last year that they were always going to struggle to replicate this year, Spurs haven't really been a huge team at any time in the prem era, and Everton have consistently overachieved with a small budget and just seem to be having a poor season this year. I think maybe all it is is that people's expectations of the rest of the so-called 'top teams' is too high.