Resource guarding is a natural survival behaviour. The aim is to teach the dog that another dog being near their "treasure" does not mean a loss, but a chance to gain.
The dog stiffens over the object.
A fixed, glassy stare at the other dog.
They use their shoulder or hindquarters to hide the object.
A warning that you must never punish, or you will remove the alarm signal and risk a bite without warning.
The dogs are at a distance, still, and simply learn to look at each other without tension while each has a resource.
Leave 5 to 10 metres of slack. The dog can move around with their object, but you can step in physically if you sense a speed-up or a freeze.
The dogs are off the lead in an enclosed space. You keep a constant eye on them. If one dog starts to "stare" at the other, put the long line back on immediately.
Only when "Drop it" and recall are 100% reliable in the face of distractions.
Take out two strictly identical balls. Throw one to each dog in opposite directions. The aim: to understand that the other dog's excitement does not stop them having their own resource.
Throw several toys at once into a neutral area. Praise each dog who chooses "their" object without bothering about the neighbour's. Abundance reduces the feeling of scarcity.
Dog A keeps their ball on "Stay". Dog B is called to pass beside them (at a safe distance) to get a reward from you. Then swap.
If you let a tense situation take hold, you validate the conflict. A fight allowed through lack of vigilance takes 10 outings of positive work to undo the trauma.