May not be exactly what you’re talking about, but… a problem I ran into in 2D recently, was the KinematicBody2D always interacting in weird ways with any RigidBody2D. If my character landed on a RigidBody2D it would push it through the floor, but in a weird way.
in move_and_slide, if you have infinite_inerta = true (which is by default) try calling the move_and_slide with infinite_inertia=false. This fixed that issue for me.