Here's the corrected version:
The problem is not related to spine-pixi.
I extracted the poring_B_00033
image from your atlas and reproduced the situation using pixi textures.
This is the code you can use to reproduce the situation:
const texture = await PIXI.Assets.load("assets/poring_B_00033.png");
const water_below = new PIXI.Sprite(texture);
water_below.scale.x = 4;
water_below.scale.y = 4;
water_below.x = 50;
water_below.y = 200;
water_below.blendMode = PIXI.BLEND_MODES.SCREEN;
app.stage.addChild(water_below);
const water_above = new PIXI.Sprite(texture);
water_above.scale.x = 4;
water_above.scale.y = 4;
water_above.x = 55;
water_above.y = 200;
water_above.blendMode = PIXI.BLEND_MODES.MULTIPLY;
app.stage.addChild(water_above);
And this is the result having backgroundColor: 0xffffff
and backgroundAlpha: 0
:

The problem here is the combination of backgroundAlpha: 0
and the multiply blending mode on your second texture.
When you set backgroundAlpha: 0
, you are basically instructing pixi to set as background the color 0, 0, 0, 0. So, when the texture overlaps with the one below, the colors of the two textures are multiplied. However, where the texture overlaps with the one below where alpha is not 0, or does not overlap, the multiplication of the colors results in having a black color.
I suppose that in order to avoid those black artifacts, you should bring your background within the pixi canvas or into the spine skeleton.