save_post_{CPT} not updating the ‘sticky_posts’ option

Most likely what you’re are experiencing is that within the edit_post() the updated post is automatically removed from the sticky posts. This happens for users that can publish posts and edit others post’s, after the post is updated and the save_post hooks have fired.

Note that core uses helper functions like stick_post(), unstick_post() and is_sticky() to do this kind of task.

As far as I understand the sticky posts feature is only fully implemented for the the built-in post type. So I’m not sure it’s a good idea to mix it with other custom post types.