Try to work with ganache-cli instead of ganache-gui.
We faced similar issues with our integration tests - lots of transactions are very slow with the Ganache GUI (especially unterunder Windows the UI has update problems).
The command line interface ganache-cli is much more stable and runs in terminal as well as in docker container. From the functional point of view, you have everything whatthat you need in ganache-cli.
Ganache GUI is nice for demonstrations to management & customers or training sessions. During development and for test purposes, it's better to use the ganache-cli.