Which version of Asterisk? Have you looked for solutions to the root problem? I don’t run any servers with that many agents, but have never run into issues like this with a few dozen.
Large ring groups can become unwieldy and problematic themselves. There’s also a limit to how long the entire dial string can be, though I can’t remember what that size is.
You said everything is on a LAN, but have you looked at the possibility of issues between switches? Can you examine the logs of bad calls and see if the failures happen on a specific switch in the network, or other correlation like that? Do you use VLANs or layer 3 switching?