Also if your filtering is getting kicked to the client side, then Bubble is downloading thousands of entries to find enough matches to fill the visible part of the RG. That can seriously slow down the process, especially if the entries are data heavy (as yours are), since every field in an entry is downloaded to the browser.
Scrolling RGs are supposed to be the most efficient (bubble only downloads enough to fill the visible slots, plus a few more). I don’t think pagination will help, but you can experiment to see the impact.
PS: the network tab in Google’s dev tools is invaluable for stuff like this – shows you exactly where the slowdowns are happening and what’s being downloaded to the page.