The problem from my previous question is partly fixed, it still has a strange shading to it
Now it's exactly the inverse problem from before. You used to have to prevent edges from being sharp, now you need to mark some sharp edges so they don't appear smooth.
You can do this the same way before, selection the edges supposed to be sharp, CtrlE → Mark sharp. The issue with this method is that you need to do this everywhere needed; It's quite long to do.
Fortunately, you can let the software do most of the work for you; Since the idea is to mark sharp when some faces do a certain angle, you can go to the Data tab of your object, and find the Auto Smooth option in the Normals tab :
The way it works is simple. Once enable it smoothes the whole mesh, but mark as sharp every edge forming at least the angle specified below. I use 66 usually, it's a nice value; You can adapt this to your need.
(Also, all the sharp marked edges only work with auto smooth enabled).