In addition to jammykam's answer, this issue occurs because Sitecore doesn’t automatically remove orphaned renderings when a parent rendering with a nested placeholder is deleted. You need to clean up orphaned renderings in the layout field.
I’ve written a blog post detailing the issue and a solution - check it out here.