Hi! The short version is that I think you can’t use WS2812B and “Tone” at the same time – the WS2812B’s have very demanding communication timing requirements that can only be satisfied by disabling interrupts.
SO, yes: FastLED disables interrupts if you use LEDs that require it – like the WS2812B.
“Three-wire” LED strips like WS2811 / “Neopixels” DO require that interrupts are disabled, for communication timing reasons.
“Four-wire” LED strips like APA102 and LPD8806 do NOT require that interrupts be disabled.
So, yes, FastLED will sometimes disable interrupts while performing the “FastLED.show()” – if you are using “three-wire” LED strips like WS2811/Neopixel strips. As soon as the call to “FastLED.show()” returns, interrupts are re-enabled.
Have you considered ‘upgrading’ to APA102 LEDs? Is that an option for this project?