Actually when you level up, you can keep rolling vendor stocks as long as you have not talked to him/her/it yet for that new level. You can test this by leveling up, sitting in front of a vendor (but not talking to him/her yet), quicksaving it, finally checking the NPC's store, then quickloading.
Also some spells/skills can only be bought at certain NPCs
such as the elemental vendors at the End of Time
and like the person said above, some skills will simply not show up if you are not high enough level yet