Hi folks.
This is normal since Open-GL has limitations.
When viewed from short distances, the ratio of the thickness of the panel to the viewing distance is relatively large and Open-GL is able to discriminate between the two and shows the correct object.
As you move further apart, the ratio gets smaller and eventually, Open-GL cannot discriminates between the two and then shows both geometries, the panel face and the shelves edges behind it as if the panel has no thickness.
The workaround is to hide the edges of the shelves that are against the inside face of the panel so they are not shown.
A simpler approach would be to assign the shelves to a layer of their own. Then, create a scene for distant viewing. On that scene, make the shelves layer invisible. You can also create a scene for close-up with the shelves layer visible.
Once that is done, clicking on the appropriate scene tab would get you the best of both worlds.
BTW, you can create scenes named "Work" and "Render" or whatever suits you. Then, on scene "Work" the shelves layer would be visible and on the "Render" scene it would be invisible. In the Scene Manager Window, uncheck the button that save the camera settings. This allows you to switch mode without changing the Zoom, Pan, Orbit settings you may have done and that you don't want to loose.
Just ideas.