Vendors scaling the items they sell to either the player level or area level or both is commonly used and not a bad system to use. Certainly better than pure random, not necessarily ideal.
That's not so bad for equipment, but I wouldn't want to see that used for skill/spellbooks. Especially since players can branch off to a another "class" line at any point.