Baking errors, trying to bake diffuse texture to another UV

Hi, I’m having some errors trying to bake the diffuse color in cycles (blender 2.79b), for an object with different materials, baking from one UV, with everything overlapped, to another UV atlas with everything together.

So I duplicate the object, and after selecting both I bake using the option selected to active. But the problem is that I find this errors at the borders of the UV shells, like some color leaking that shouldn’t be there.

I tried using the cage, and playing also with ray distance parameters, but same result.
I always get this:

Any idea why this is happenning, and how to solve it?

Well it seems that those artifacts are most likely caused by the intersections in the model.
Anyway I’ve kinda solved it baking it inside the same object, from one UV to another, instead of duplicating the model and baking it with the option Selected to Active.
I still get some artifacts, but less, and I think I could fix them in photoshop easily.

I don’t understand why cycles bakes a texture in such odd ways, as it is always asking you for a texture node in the material, giving you error messages if you don’t have it, or overriding the texture assigned with the baked one.
So if you have a lot of materials and you just want to get a texture from all the materials, let’s say for example to export it to Substance Painter, it’s annoying because you are forced to add a new texture node to all the materials for the baking. It should be more simple than that.