How to keyframe scaling with 3D Cursor?
You have to keyframe both location and scale, if you want to scale in relation to the 3D cursor.



Since the object's pivot points are aligned with their geometric center they are technically moving, since the center position shifts up during animation.



Ideally though you should position all your objects center aligned with their bottom faces though.