Yes, orbit controls orbit around their target position.
What you can do is:
(1) disable orbit controls all the time when looking at a painting (simply stop calling this.controls.update(); in the loop and do the rotation yourself, until user decides to leave, clicks or moves the mouse)
(2) set controls.target to the center of the painting based on its bounding box (see here how-to).
Long story short - don’t play with rotation when using OrbitControls.update(), it’ll just mess things up, use target only.