Unfortunately the bookmarking feature breaks between XMPP clients. The symptoms between the different clients can be different. For example, if I make bookmarks in Conversations Android app and then make modifications in ConverseJS, like changing my nick, it doesn't seem to propagate to other clients and sometimes the chat room disappears altogether. Or one client takes control and any changes done in another client is undone.
It's things like this that make XMPP so difficult to attract the general population and why centralized services thrive. Sometimes having too many choices and and too many different ways of implementing a concept causes incompatibility in ways that most people don't want to have to bother with. The moment you suggest a "workaround" to make something "just work" should be a big red flag to indicate that something needs to be fixed or improved. Workarounds signal to the end user that the product is not quite ready. It is just really surprising that with XMPP having been around for decades now, that this is still an issue. I really hope that developers would work together on this to create universal solutions rather than continuously imposing responsibility to other developers. Yeah, I get it. Nobody is breaking protocol with the way they have implemented a feature, but can we all figure out how to make things work with each other? In the meantime, the most common suggested workaround for this problem is to log out all other clients and modify your bookmarks in one client at a time. Well, not even that is perfect, but I generally do my bookmark management on the blabber.im android app or on Gajim. ConverseJS also has a good interface for managing bookmarks. But, again, be warned not to be logged in to more than one client as things can get messed up badly.