To animate a massive volume of liquid, you need to define for each small part of it its direction, its velocity.
So, particles are used. Problem is that if you fill a big volume, that’s require a huge amount of particles.
Each particle will have an impact of others. Computations are increasing, exponentially.
So a huge amount of particles, that corresponds to a huge amount of computations.
To avoid that, developers are making approximations. A lot of approximations.
Particles are limited to a narrow band to limit their amount.
FLIP particles behavior is computed faster but it is less stable.
And influence of a particle on its neighbors is relative to its radius.
Result looks more realistic than an artistic deforming a surface frame by frame and it is less work for artist. The goal is not provide a scientific simulation like a CFD software.
In your .blend file, explosion occurs because obstacle that comes from bottom (side opposite to narrow band).
Huge mass of liquid that is supposed to have been displaced is ignored during lots of frames.
And there is a huge readjustment only when it becomes perceptible for narrow band.
Mantaflow does not compute narrow band near to obstacles using boolean modifiers before fluid modifier. Because of their thickness being null, there is probably a difficulty to handle boolean modifier.
If you set their thickness at 0.8, narrow band will be computed near them.
At that moment, simulation will no more explode.
Maybe that will not be sufficient to obtain desired effect.
You may think about cheating and increasing velocity by using force fields or guides.