Если ваши объекты - это простые старые Java-бины, вы можете использовать отражение, чтобы сравнить все свойства между двумя объектами. Commons BeanUtils может помочь с этим.
Но вам придется реализовать некоторую стратегию разрешения конфликтов.Если оба клиента изменили одно и то же свойство.Самой простой была бы стратегия «последние изменения - выигрыш» - изменение с последним «lastUpdateTime» заменяет любое другое изменение.