Actually, this was a false positive for me. Enabling IGMP snooping seems to delay, rather than fix, the issue. Previously the Chromecast was disappearing after about an hour, but now it seems to last about 12 hours before it disappears.
My theory is that IGMP snooping helps because the interfaces are no longer flooded with multicast requests, and instead they are targeted. This means it takes longer before the interface is overloaded and drops? But I'm really stabbing in the dark there as I have no full understanding of the ins and outs of multicasting.
I've got a Gl.iNet ARM300M here that I'm going to try instead to see if it handles the Chromecast more consistently.
I too use Ubiquiti APs on their firmware with a controller at home and it blows anything else I've used out of the water. I combine this with an Archer C7 V2.0 on OpenWRT, also for the excellent SQM. Not so practical to pack one on my travels however...