Да, вам нужно синхронизировать доступ ко всем полям синглтона, иначе вы нанесете ущерб состоянию вашего объекта.
С другой стороны, если вы можете избежать синглтона в многопоточной средеВам будет лучше.Почему бы вам просто не передать свой объект вместо того, чтобы использовать тот же экземпляр.
Вам все равно придется синхронизировать доступ, если он используется совместно, даже если вы передаете его.
Я просто не профессионал в синглтоне, поскольку они, как правило, приводят к потребности в большем количестве синглетонов, чего неизбежно следует избегать.