Cleaning up overlapping meshes
You may use Shrinkwrap modifier.
You should separate each part using &quot;P&quot; because the modifier is working between different objects.
You can find the balance between the settings, offset, even using a group of vertices, to have a gap between the two meshes.
The original mesh:

An example of the result using Shrinkwrap:

Notice on the right part: a poor vertex count or a wrong topology do not allow the modifier to manage the gap as expected.

Depending on the position of the vertices and the different topology,
you may need to modify or add/remove some loops.