what if there would be no restriction at all for all traders in whole wasteland, BUT, you got to have good reputation in selected town to trade there... lets say, you do a quest for NCR, you finish it, you get your reputation to 300(max), youre able to trade with any npc in NCR.
this would require quests in every towns though, but i think they should be repeatable (you dont get any prize, only reputation higher, but not higher than 300), in Klamath, you have to kill 5 geckos and collect all their hides, you get 50 rep in Klamath by giving them to specific NPC. after getting 30 hides, youre accepted to trade with any person.... (that was just an example of what ive thought about)
and, to make it not abusable, when the negative reputation is gonna rise by time (till -100), only then you can do those quests (if its -101, you cant do it, youll have to wait till itll rise). this would stop players from getting good rep even if they kill NCR Army 24/7. so this is basically useful for those who DONT wanna f...k up reputation with specific town(s)