Scavenge; If somebody sees something lying around, they will most likely pick it up. If the item is owned (by the player or another NPC) then they might, depending on the object's value and their responsibility. High responsibility NPC's will pick up Player-owned objects and return them for a monetary reward.
There is a problem here, we cannot have npc's pickin up everything lying around. Imagin a npc i the fighters guild hall, and steal all the weapons, books and food laying around, and all the guild members will attack him.
There have to be another way.