Why can't I get rid of seams when texturing objects?
It's not a problem of UV unwrapping, it's just the material itself. You won't get rid of the seams entirely, though. 

As long as you don't use purely procedurally generated materials (that means no image textures are involved), it's next to impossible to create a UV map without visible seams. You would have to straighten the polygons on your UV map so it fills the whole texture map (granted your image texture is tileable). 

If you want to use image textures and want to get rid of the seams, you need to "paint them away" in Texture Paint Mode. Use the Clone Brush, clone a similar looking part of the image and paint over the seam to make it less visible.  

"Hard" 90 degrees angles like in your cube example are still problematic. You can solve this by using the "Chinese Box unwrap" instead of "Smart UV Project" , which results in less seams. Then start painting over the remaining seams starting with a very small brush.