Try to synchronize the minimum number of objects with VRClusterObject. The more objects you synchronize manually, or the more number of physic objects that you use (which will be automatically synchronized), the slower the network will be.
It's better to display a small viewport on the master and to disable its VSync if it's not part of the actual display system so it runs faster and doesn't slow down the rest of the cluster.
Also if the master has a different refresh rate than the rest of the cluster, use the Disable VSync on Master option.
Disable Unity's output logs (in the Player Settings, Use Player Log) otherwise Unity will write its logs through the network and slow the application down.
It's better to put all the CPU intensive tasks before the VRManagerScript::Update executes: we use a thread at the end of a frame which will handle the frame synchronization, but Unity can start to work before the frame sync is actually over, so we get some parallelization.
Just be aware that MiddleVR will update the devices state a bit later, when the VRManagerScript executes.