I'm not sure I fully understand how you got into that state. It sounds like you tried to wrap a few MSI's with a bootstrapper, and then create another (like a parent) bootstrapper that runs the other bootstrapper.
If that's the case, I don't think we've ever tested that, and we never intended to nest bootstrappers together. So, your solution of just adding the .MSI's to the topmost bootstrapper is the right one. It kinda sounds like somehow you got the package file to point to the main/parent bootstrapper and it kept reloading itself.
If you'd like me to take a closer look, I would be interested in seeing the directory layout of the published files, as well as your custom package files... so I could try to reproduce it.