Imagine that it was possible to build training dummies. Presumably, one would be able to attack them and gain LP to spend on combat skills. Now, think about this... If they give you a nice level of LP, then why bother with any other craft when you can just go bash a dummy while AFK until you can buy steelmaking? If they instead gave you very few points, then it would be far easier to learn how to swordfight by building houses.
You see the problem.
Now, look in other fields in the game- such as farming and mining, or woodcutting and fishing. It's evident that some kind of economy wants to be developed, but how can it be done is each player can pretty quickly get themselves everything they need?
Here's my solution to the specialization issue:
Break Learning Points into several classes, potentially Earth/Fire/Water/Air (though I've just taken those for example, and many different classes could work), or some other set. Have each skill require a certain kind of skill class (or even some points from several classes), and have each task earn similar returns.
Consider if mining was an Earth task; each time you mined you would get 10 Earth skill points. If you want to learn Stoneworking, that might cost 200 earth points. Farming, on the other hand, would cost 200 water points. If you just mined and worked metal, you might be able to get a great many earth and fire points, but not get any water and air and so not be able to learn Farming, brewing, and so on, without starting at the very bottom levels of finding herbs or picking apples.
If we call Melee fighting and such fire skills, then doing such tasks as crafting and growing plants will give you points but be worthless to help you learn combat, while fighting a dummy would be perfect!