...
Foreign Tourists (other races, that could impart some knowledge for a fee (IE, elves could teach better bow techniques, which improves the quality of all future bows made)
...
I'm not sure you want to simply improve the quality of the objects themselves. Maybe they could actually impart that knowledge with available dwarves in a manner similar to military training.
You could pay them based on how much they teach (xp gained) and dwarves taught. The initial deal would cover the max amount of dwarves that can attend and for how long they will be taught. After the deal is made Dwarves could be selected from a list and be "activated" to go learn as soon as they finish their current job and aren't needing food, water/alcohol, or sleep.
The lesson would start either after the number of attending dwarves has reached the maximum set in the deal, a certain amount of time has passed from the deal being made, or the player has given the go ahead to start teaching the deal. In regards to the latter two possibilities, unused slots could or could not be refunded. Maybe it could be either, and this could depend on the the individual teacher's personality or whether or not an extra percentage fee was paid in order to refund unused slots.
In the case of refunds, you would go into a trade menu with the amount of value refunded and can rebuy whatever you had sold them for the lesson.
This mechanic could also be used for most of those roles, with each teaching what they know. The value of the goods given in exchange for the services could also depend on the role of the teacher, value increasing for stuff they want/need and decreasing for the stuff they don't want/need. An adventurer would want basic supplies like food, water/alcohol, rope, etc., a mercenary would want armor and weapons, a trader would want goods in the category they trade in, a bard would want instruments and high quality clothing, and a tourist would want crafts (souvenirs).