Im using blender 2.8 and modelling a Pokeball, however, whenever I try to smother out the flat edges with a subsurf or smooth shader it creates weird artefacts. Any suggestions would be greatly appreciated.
Subsurf is probably not what you want. You don't smother out flat edges, you use smooth shading. Enable Auto Smooth in the Object Data Settings (marked below). Select all faces and mark them as smooth. Select the edges you want to be sharp and mark them as Sharp.