Armature shifts between Pose mode and Edit mode
Summary

Make sure 


Align origins of curves with Snap the first vertex position of curve.
you have not  repositioned the bones when you want to see standard rest position.




I believe you should either have


Separate Back spine concept and Separate Tail concept for Control concept. Fresh Start. Clear preference.
Switch direction of spine bones.  Less Preference.


The neck bones are reasonable.  The spine/tail bones are Blender Bites Ya.  Your current spine/tail is like the undesirable metaphor about the tail wagging the dog.  Note that I do not want address unrelated topics if possible, but this issue appears large.

Make sure you have not moved any bones in pose mode for the particular frame.    The point of pose mode is to place bones in different positions.

You may need to use Menu ... Pose Clear Transforms Location.  You may need to delete any keyframes.



Use the setting

Chain Offset enabled in the Bone Constraint Panel.  This will maintain the position of the root of the first affected bone.  The first affected bone will be the bone further up the parent chain as determined by chain length.



Successful use of Spline Constraint. Image above.

Additionally
For Precise placement in a different manner be very aware of your origin on the curve.  



Align origin to first point on curve. Snap is used for precision. Image above.

Curve origin should be first point on curve. Be precise with the use of [Snap].  Edit mode curve, Select first point, snap cursor to selected, object mode, Transform Origin to Cursor.

It seems seems you made an effort to align with eyeball which is semi precise.  Snap is 100% precise.