How do I fix window jams that are not even with drywall?
A buddy of mine does trim work for a living.  In the place we re-modeled, he did much of our trim work, and like the OP, we had many jams that were not parallel nor flush with the walls.  What he ended up doing is to extend the jam in order to split the difference (i.e.- at maximum the jam was 1/8" past the DW, at minimum, 1/8" behind).  Then he had a few tricks to get the trim installed-

For areas where the jam was slightly short, he would take a razor blade, and score the drywall about 1/4" in from the edge of where the trim would sit, then take a hammer, and punch down the DW even with the jam.  So the outside edge of the trim would be on intact DW, but under the bulk of the trim the DW was smashed down.

In areas where the jam was sticking out too far, he would do one of two things- in most of our rooms we were painting the trim, so he would use a paintable caulk behind the trim to seal it against the wall, then use a piece of square wood dipped in some soapy water to make the caulk flush with the trim.  After painting over it, you can't see where the trim stops and caulk starts.  

For the one room with stained maple trim, he shimmed behind the trim when cutting the miters, and played with the thickness of shim until the trim would "rock back" against the drywall but still meet up with the trim it was mitered against.  This seemed much more an art than a science.

Overall, the process is not easy, and I doubt I would be able to duplicate the quality of his joints, for the exposed wood trim with jams extending past the drywall.