I’m no expert but I had a similar problem trying to get multiple neopixels running different patterns at the same time.
Look at this and read up on the time slicing method:
It’s probably the delay at the end of the code that’s causing the block.
I don’t know how long your display takes to complete a screen but add 80 milliseconds