When mesh objects are added together in edit mode to create one single 'object', how can the intersections between the mesh be removed? Is it possible to remove the internal intersections of mesh that have been added together in edit mode to create one 'object' - ideally creating a smooth interior, e.g. for 3D printing? 

I have tried booleans but they are so destructive I'm really hoping for another fix.. 

This is what I have right now:



And this is what I would like it to remain looking like this on the outside:



What I would like it to look like on the inside is a replica of the outside, with all the redundant mesh removed - like the inside of a toy or a clay model that has been hollowed out. 

Booleans are just not working, they absolutely destroy the mesh whenever I try to use them. 

Literally dying trying to figure this out, so any help would be immensely appreciated. 

The key issue is that it's for optimising a model for 3D printing, AS WELL AS keeping it smooth on the outside (and non-manifold) 

Thanks!!
I would approach this by using face-select mode, and selecting the visible faces of each constituent element of the model, and assigning the vertices comprising those visible faces to a separate vertex group for each element. If a face is partially visible from the exterior of the mesh, I would assign it to the group. When all of the visible faces of all of the elements have been assigned to vertex groups, hide all of the groups, using the H key. Select the remaining vertices, and delete them, and unhide the vertex groups using ALT-H. Then stitch the constituent elements together.