This crash is caused by a bug in the way Safari synchronizes with iCloud.
Uncheck the box marked Safari in the iCloud preference pane. You may also need to do as follows.
Back up all data.
Triple-click the text on the line below on this page to the clipboard, then copy it to the Clipboard (command-C):
~/Library/Safari/Bookmarks.plist
Quit Safari.
Select
Go ▹ Go to Folder
from the Finder menu bar. Paste into the text box that opens (command-V), then press return.
A folder window should open with a file named "Bookmarks.plist" selected. Move the selected file to the Desktop, leaving the folder open.
Relaunch Safari. It will open with the default set of bookmarks. Delete them all. Select
File ▹ Import Bookmarks
from the Safari menu bar. Import from the bookmarks file you moved to the Desktop. Arrange the bookmarks as you wish.
Select from the menu bar
History ▹ Clear History
and confirm. As far as I know, you don't need to reset Top Sites, but I'm not sure of that.
You can then try to re-enable Safari in iCloud. It may start to crash again. In that case, you'll have to leave synchronization disabled until a more permanent solution turns up. Sync bookmarks with iOS devices in iTunes instead.