Have you looked into VLC or OBS for doing this? The big issue that isn't really solved is that most desktop protocols take advantage that the image has a majority of the screen static and only small areas of the screens need updates. Video is the exact opposite problem: nearly every pixel changes across frames and so to have it be reasonably well sync'd especially with sound you need a different kind of protocol.