Regarding the leveling mechanic, I think it should be the responsibility of the player to limit their characters ability in a given field. If your characters is a poet then don't go training them to be a warrior, a cook, an assassin, etc... all at the same time. Limits would cause the character to become too stiff and possible flat. After all, people can change their professions to something radically different at any point in time in real life.
I think a job system should be set up. People RP having a profession, but that is usually all you can do (RP having the profession not really doing it). The economy is not quite strong enough to have it fully player dependent so NPCs are needed, but just selling stuff back doesn't help RP much. Have characters that train in a craft accept crafted items from players. Maybe as a regular quest or maybe as something like the change making service where you hand over an item and get something in return. Having an employer will give people something to do with the skills they've acquired and would allow them to train it in a better for RP way. killing rats to train in cooking isn't quite the most effective way to learn how to cook in real life.
For instance, as a special quest you can have Harn respond to a specific prompt to take you straight to this quest and have him tell the player to craft him an axe or so many axes to help him fill an order. In return Harn can offer less than normal pay but higher than normal experience as that seems more realistic. When learning a trade or working under someone, you will earn less than them but you can still pick up techniques and learn from them. It would be better if the items requested and the number needed varied. Better still would be if quality played a part in how much money and experience you received, but I'm sure that would be a long way off. Since some stuff requires certain skill levels to make, it would be good if the NPC could request items based on skill level or asked the player if they are high enough level to fulfill the quest, like NPCs do with asking if you have winch access.
As a similar function to the change making service, you would make a crafted item, and then give it to the NPC who would then give you a reward or money and experience if possible similar to the quest system. But as it would be easier to do it this way. Money and experience would probably have to be even lower.