To get sync to work reliably for me (*), I’ve ended up creating a mirror vault on Dropbox, with Syncthing continually running on a Mac to keep the iCloud vault and Dropbox vault synchronized. It’s been working like a charm. I use the iCloud vaults on the iPad and iPhone, but the Dropbox mirrors on everything else.
(*) across 4 Macs, an iPad, an iPhone, 2 Windows laptops and 2 Linux laptops. It seems excessive when I write it down but they all seem necessary. I might need professional help.