How to remove visible seams between joining objects
As someone mentioned in the comments, this is caused by how normals are calculated for each mesh you split off. The normals at the vertices along the edge of your split meshes are now pointing in slightly different directions. To fix this, transfer the normals from your original un-split mesh to the parts you split it into. You can do this using the Data Transfer modifier.

Comprehensive steps to fix:


Create a copy of your original un-split mesh and place in the scene. You can hide this mesh.
Split your original mesh into the pieces you want. 
Add the DataTransfer modifier to the split pieces with the following settings


Source object - this should be set to your original un-split mesh copy
See screenshot for other settings