Blender Game Engine Player Flies off When Parented
Physics objects disable physics when parented.

Basically they are excluded from the Physics Engine calculation as the Parent-Child relationship takes over the transformation processing (position and orientation calculation).

I have the feeling that Character physics is not a really a Physics type and does it's own "magic". It might be that it does not expect the object gets parented to something. This causes a feedback loop and let your object fly away.

Unfortunately I can't really help on this issue directly. maybe you can manually suspend Physics while parenting (see the edit object actuator Mode: Dynamic).