Just guess, I don't know how the bullet behaviour works in background, but maybe trying to remove it and coding some simple movement could help.
The problem here is that there are way too many snowflakes, and they're all over the windows so the redraw area is pretty big.
Can't help you
edit: also just realised that the overlapping actions are being triggered the whole time (snowflake overlaps player), adding a trigger once while true in that event helps.