The DMG presents a couple of rules that might be useful to you in situations with many summoned creatures on the field. Note that you really have two problems here:
- Large mobs are bogging down the pace of play during combat.
- Large mobs are unbalancing combat, forcing you to rely too heavily on big AOE spells to counter them.
Try the rules for mob attacks in the DMG
DMG Chapter 8 includes a section on handling mobs, which seems perfectly designed for your situation based on the intro:
Keeping combat moving along at a brisk pace can be difficult when there are dozens of monsters involved in a battle. When handling a crowded battlefield, you can speed up play by forgoing attack rolls in favor of approximating the average number of hits a large group of monsters can inflict on a target.
This section gives a table that lets you quickly determine the expected number of hits based on what roll on the die is required to hit. For example, if the druid summons 24 wolves and they each need to roll a 14 to hit their target, the table says that 1 out of every 3 attacks hits, so you skip the 24 attack rolls and just roll damage for 8 hits. And for these damage rolls, you might want to use a dice rolling app to speed things up even more, or even just use average damage if your players don't mind the lack of randomness. Once you determine the number of hits, you can distribute them evenly over the available targets, or roll a dX for each hit, where X is the number of targets, to randomly assign each hit to a target.
You gave an example of a mob of octopi grappling a target, and you can apply these rules there as well, with some slight modifications. Determine the DC using the target's "passive" athletics/acrobatics, i.e. 10 + the relevant modifier, then resolve the grapples against that DC using the mob attacks table. Sure, in theory this actually removes all randomness from the grappling, since no damage rolls are involved. But really, was there any randomness to begin with? What was the probability of the target winning enough of those 24 grapple contests to have a chance of escaping next turn? Probably pretty close to 0%. So in a sense, this is just adhering to the principle of only rolling when the outcome is uncertain.
You can also apply the same table to saving throws against AOE spells. Once again, determine the die roll needed for success given the summoned creatures' saving throw against the save DC of the spell, and look it up on the table to see how many attempted saving throws are required for one to succeed. For 24 wolves, if a natural 15 is required to save, then 1 out of every 4 wolves makes the save, so 6 make the save and 18 fail. (Of course, maybe not all 24 wolves are in the spell's AOE, so adjust accordingly.)
Try using the optional cleave rules for attacks against mobs
For enemies attacking player-summoned mobs, you might consider the optional cleave rules in DMG Chapter 9:
If your player characters regularly fight hordes of lower-level monsters, consider using this optional rule to help speed up such fights.
When a melee attack reduces an undamaged creature to 0 hit points, any excess damage from that attack might carry over to another creature nearby. The attacker targets another creature within reach and, if the original attack roll can hit it, applies any remaining damage to it. If that creature was undamaged and is likewise reduced to 0 hit points, repeat this process, carrying over the remaining damage until there are no valid targets, or until the damage carried over fails to reduce an undamaged creature to 0 hit points.
(Yes, technically these rules are for players attacking enemy hordes, but we're reversing them here since this time it's the players bringing the hordes.)
Essentially, excess damage from an attack carries over to the next creature, assuming the same attack roll also hits that creature, and continues doing so until either the attack misses the next creature or there is no more overkill damage.
In practice, using this rule against mobs of identical summoned creatures is effectively equivalent to treating the summoned mob as a single large pool of hit points, somewhat like a swarm. As an example, suppose a big enemy rolls 24 damage on an attack that hits against a swarm of wolves with 11 HP each. The attack will kill 2 wolves and deal 2 damage to a 3rd one. This will give melee attackers a fighting chance against these large hordes by making it easier for them to quickly thin them out, hopefully without seeming overly punishing to the players. Note that you probably want to use the cleave rules only when attacking mobs, not in any other context. And it's probably fair to let your players also use the cleave rules against any enemy mobs they encounter as well, to make things feel fair.
To resolve multiple attacks against mobs more expediently, roll all the attacks at once, then roll the total damage for all the hits and then apply this total damage to the mob using the cleave rules above. You can describe this narratively as an enemy hacking their way through the horde, carving a path toward the players.
Using the cleave rules helps single-target melee attackers remain relevant against player-controlled mobs, which can in turn enable you to threaten mobs without having to always resort to big AOE spells, something you said the players are getting fed up with. If this works well, your players should actually feel less persecuted, since you are no longer obligated to throw big AOE blasters into every enemy composition in order for them to put up a fight.
Counter player-controlled mobs with enemy mobs
One obvious counter to player-controlled mobs is to throw enemy mobs at them. However, you are probably loathe to use this tactic because it will slow down combat even more. But, if you find that the above rules allow you to handle mobs more quickly and efficiently, this opens the door for you to incorporate similar mobs into enemy compositions without bogging things down so much. Obviously, you should only try this once you have player buy-in for the above rules and feel you have mob combat running smoothly.
Play test!
Obviously you will need to see how these rules work in practice with your group. If your summoners really like rolling dozens of attacks, this isn't going to be very satisfying for them. On the other hand, maybe they'll like getting to automatically roll damage without an attack roll, making it feel similar to an AOE spell. Even if they really like rolling dozens of attacks, maybe you can still convince them that it's not very fair of them to be hogging the spotlight like that when everyone else only rolls at most 2 or 3 attacks, and this is a way for them to have their cake and eat it too. You can also emphasize that running combats more quickly lets them get through more gameplay and story in the same amount of time, which might be more rewarding overall for them even if individual combat rounds don't feel as spectacular. Regardless, I think this is worth trying for at least one battle/session to see how it works. Make sure to present it as a test to see how they like it, rather than a declaration of "this is how mobs work now".
Remember, the standard D&D combat rules are already a coarse approximation of real combat. When fights suddenly get an order of magnitude larger, it's OK to further coarsen that approximation for the sake of expediency. And it's also OK to switch back to the normal combat rules for a particularly pivotal round where the exact number of hits from a mob might determine whether an important bad guy lives or dies.