The fleet massively outnumbered the Reapers, which is the big advantage they had. Ultimately, the only real immunit that the Reapers had was plot immunity. Which was inconsistent with the codex and scenes we've seen before in the series.
I don't think there's evidence for that. In every shot of a massed Reaper force there seems to be plenty of them, and they're spread all over the galaxy. We don't have any numbers for them, but they could be in the millions, and we also don't know how they would rebuild and repair themselves, but we have no reason to believe they couldn't do so faster than the allies could rebuild. In a war of attrition, we have every reason to believe the Reapers would win.
Also keep in mind that their armor and shields are strong enough that, when fully enclosed even the strongest volleys the allies have couldn't penetrate their shells, and only when opened for firing is there a small target that can do damage, IF you concentrate a few thousand ships on a single small target, which is apparently impossible to aim at from more than a mile or so away.
Oh, and for those that said we should have blown the Charon relay, one, there's no way to do that, as even the combined might of the ally's weapons couldn't scratch the thing. Only if they smashed a small moon into the thing could they cause any damage, and that would take weeks, if not months of planning, all within the Sol system, without the Reapers stopping them.
Two, even if they did blow the Charon relay, and even if it did wipe out every Reaper in the system, there are still plenty of other Reapers in the other systems, and assuming that they could manage blowing Charon without losing the entire allied fleet in the process, they'd still have a dreadful battle on their hands, like children with snowballs verses a tank division.