When you have an uneven gap across the top of door, it can be caused by two common problems. The first is the door hinge side is out of plumb. This can be easily checked with a level placed on the jamb or hinges to check if they are correct.
The most likely cause, the floor is not perfectly level. When the door is place directly on the floor and it's not level, it causes one side of the door, hinge or latch side, to be higher than one another. The easiest way to solve this problem is, when installing the door space the jambs off the floor when possible. Always do this in new construction or when there will be carpeting installed on the floor. This does a couple of good things. The first, it allows you to raise or lower the door jambs independent of the floor, now you can make the gap perfectly even across the top. Most floors have imperfections in them that will hamper a door installation, so this a fairly common problem. Second, it raises the door off the floor usually enough so you don't need to cut or trim it off.
If your putting a door in on a finished floor, you may need to cut or trim one side of the door jamb, either the latch side or hinge side. Place a level on the floor and level it. Measure the gap under the low side of the floor. This is the amount you need to cut off the HIGH side of the door jamb. Here is alternative way to check the door for level http://ezhangdoor.wordpress.com/2009/05/06/24/