It does reach the break statement. The problem was multiple characters with this script occasionally hitting the enemy at the exact same time, causing the code to fire multiple times in the same game frame.
My quick and dirty fix was just to move the enemy_death_scene and queue_free() code portions to a timer that times out very quickly, and cant be reset while it is counting down (if multiple hits occur quickly).
I will mark this as solved. Thanks all for your help once again!