The back page of my set of rules has several systems to try to sort this out. Appendix 6 of the rules (from here) says:
At any time, a player may discard any 3 cards from his hand and draw the face-down card at the top of either the Minor Improvements or the Occupations deck. This card is placed in the player’s hand.
Each player draws 10 Occupation and 10 Minor Improvement cards and discards 3 of each.
At the start of the game (and only at the start), a player may discard all 7 Occupations and/or Minor Improvements and draw 6 new cards of that type. (If the player is still unhappy, he can keep trying this, always drawing 1 card fewer than he discards).
Before the game starts, each player receives a hand of 7 Occupation cards as usual, then chooses one and passes the rest to her left-hand neighbor. Each player chooses one of the 6 new cards and passes on the remaining 5. This continues until each player has 7 cards. Repeat this process with the Minor Improvement cards. This variant allows players to create better combinations of cards than with a purely random distribution. We recommend that each player should have played Agricola at least 4-5 times before trying this variant.