I am trying to make an axe and stomped upon this problem...having no idea how to resolve it. 1st photo is with subdivision.
second is without.
It basically the Ngons that are causing the problem, as Cegaton stated best to use 4 vertices to a face. So keep it even and one way can be using edge loops to create more faces evenly.
Sample solution can be like this, for example:
Fixing up the model to create quads
A Quad is just face shared by four vertices, just making that clear.
Now, you have edges lines going each of the corners vertices select them and go delete X > Dissolve Edges. This will delete your edges but keep your faces as shown here:
TIP: Use Edge Select to make this easier
Now use the Knife Tool to create quads, what I did was use an existing vertex and created another one which creates an edge as well between the new one and the existing one. See the rectangles I'm making between those vertices, those are the new quads. Press Enter to accept knife changes.
Repeat for the rest geometry/vertices that don't have quads.
Hope that is enough :)
You have N-Gons and are using subdivision surface. N-Gons and subdivision surface don't work together unless the N-Gon is flat and surrounded by a quad loop. This is not the case in your model. See this post for more details on when Ngons are okay to use.
Subsurf needs quads but also objects created with Spin and proportional editing to have the desired effect without extra work. A bowling pin is an example of sich an object.