I’ve been wrestling with a blueprints bug where you can’t cast a class down to a child class. Sometimes it works in editor, but seems to always catch when cooking.
User Cornish183 offered a workaround which worked for me here: https://answers.unrealengine.com/questions/339295/erroneous-cast-would-always-fail-warning.html
Basically, you can make a local variable that is an actor ref, save the parent class in the actor ref, and then cast that actor ref as the child class. Cheers to Cornish 183!