There's nothing about D-Bus in general that is problematic, but rather that flatpak relies on the D-Bus session bus and systemd --user instances[0]. It can be made to work just fine on a server, but it may not be the most convenient arrangement due to this dependency on user sessions.
WebRTC (firefox and chrome) can (usually) stream individual XWayland windows using the same mechanism that was in place for window sharing under X. Wayland native apps are not shareable (and may not be if/until some protocol changes are introduced).
I hope that fullscreen desktop sharing "just works" now that we've released xdg-desktop-portal-wlr[0]. If you have any trouble with it, hit me up on freenode #sway or raise an issue on this project. We're happy to help and looking for a broader user base to help us test it out.
It depends a ton on what distro you are using. Some distros that now ship with wayland native desktops have tons of downstream patching to smooth out the experience. If you run Arch for instance, the default Chromium package is not ozone, and will run with XWayland (although chromium-ozone is available in the AUR). It's possible your distro is doing something differently.
OBS can capture wlroots based compositors with the wlrobs[0] plugin. Give it a shot, it's really smooth for me. There's also wl-recorder[1] which is much more light weight if you don't need any of the fancier features. Also, cyanreg is working on txproto[2] which is a much faster/feature rich version of wl-recorder, although I'm not sure it is ready for prime time as it uses a couple bleeding edge libs.