UV mapping not filling faces
This can be caused by a combination of subsurf and multiple materials.

You'll notice that when you assign the materials to a model with subsurf, in some cases they don't line up with the edit cage. In these cases, if you either apply the subsurf modifier to the edit cage or disable it completely, the materials line up with the topology:



To fix this distortion caused by the subsurf, add supporting geometry or creases.


For adding supporting geometry, the loop cut (&#9096; CtrlR) and bevel (&#9096; CtrlB) tools work pretty well. 
You can change the crease weight of selected edges by pressing  &#8679; ShiftE.