How to get rid of subsurf overhangs?
The issue is cause by the beveling of the edges that you did. When you applied the bevel operation, a small triangle was created in each corner.



Triangles are notorious for having issues like this when being subdivided. In this case, it may be difficult (although not impossible) to remove the triangle completely though. If you restructure the mesh so that the triangle is located on a section that isn't a corner the smoothing will look much nicer. Here is a way you could do that.



Here is a comparison between the corners when subdivided: