I just saw this thread and the answer is way simple. You don't need to disable Safari in iCloud preferences. The reason this happens is more than likely because you have two or more devices connected to iCloud at the same time. So you have all of those devices trying to write their individual favorites/bookmarks lists to iCloud fighting each other. The answer is to turn off your iPhone & iPads, any other Apple devices, and any other Mac computers you may have running; leave the Mac you are using to edit your bookmarks with on of course. Then go ahead and move anything around that you like. It will work fine. You don't need to have the other devices off to add new bookmarks, they will all add simultaneously. But when you edit, you should turn off all devices except the one you are editing from. Don't disable Safari in iCloud. You are only depriving yourself of the advantages iCloud offers. That simple:
Leaving all devices on when adding a bookmark: OK
Leaving all devices on when editing bookmarks: NOT OK
Turn off all devices & computers except the one you want to edit Bookmarks with.
I too was having this problem where my Safari bookmarks moved on their own. The notion that it's caused by iCloud synchronizing devices makes perfect sense. However, my MacBook Pro is my only Apple device. I don't have an iPhone, iPad, or other iCloud-synchronizable device, and my iCloud account confirms no devices connected. So I decided that iCloud is "stuck" and was re-ordering my bookmarks because it can't update the data that it has. My next actions turned out to be a "simple" solution, but it was very messy.
- Go to iCloud preferences and click on the checkbox to turn off Safari synchronization.
- Go to Safari and arrange bookmarks. (Disconnecting Safari from iCloud is certainly the answer to leaving bookmarks alone.)
- Return to iCloud preferences and click on the checkbox to turn on Safari synchronization.
- iCloud asks whether to merge with whatever is stored on iCloud.
- At this point, I click the Cancel button, hoping that iCloud will discard what it has and start fresh with what's on Safari at the moment. Instead, the dialog goes away and the checkbox for Safari remains unchecked.
- I click the checkbox again to turn on Safari synchronization.
- When asked whether I want to merge data, I click the other button.
What happened next was infuriating. Every bookmark I had for the past several years, it seems, was reloaded. My Bookmarks menu and Favorites bar ran on forever with links old and new. Even duplicates, triplicates, etc. I encountered one bookmark repeated seven times in different places. On the bright side, the "Bookmarks Menu" where I arranged everything was renamed "BookmarksMenu" and everything in it was in the order that I left them. So, I spent the next hour-plus wiping out everything unwanted outside of "BookmarkMenu", as well as tweezing through folders and subfolders in the Favorites bar. Then there was a bit of a game restoring "BookmarksMenu" to "Bookmarks Menu", but the way to do it turned out to be easy.
In the end, disconnecting and reconnecting Safari from/with iCloud and merging data seems to be the solution. (In this case, that is.) In the time I've spent cleaning up the mess, my bookmarks have stayed where I left them. And . . . [checking] . . . they're still where I left them. The question now is whether this solution will maintain, or if iCloud data will get "stuck" again at some point.
What would be great is some way to reset iCloud data with a click, like trashing a corrupt plist file from the Library. Whether from System Preferences, iCloud.com, or even Safari, a button to reset or trash synchronized data and rebuild from connected devices seems like a convenient solution. It would have saved a lot of time and effort.