Jagged edges before subsurf, or rounded corners after
First, your mirror modifier needs to be moved to the bottom of the modifier stack. If you subdivide it before mirroring, it will look like its separated, and it's very noticeable in the pictures you shared.
Making edges sharper is very easy. All you need to do is crease them. Just select any edges that need to be sharper/less smooth, and press ShiftE. You can then edit the crease value, a number between 0 and 1. It is 0 by default. 0 means that the subdivision surface will operate normally, and 1 means that it will not touch it at all and leave it completely sharp. The creased edges will also become purple, and this color will be lighter/darker depending on the crease value. Hope this helps!