I think, you will have to code BFS algorithm for this kind of task find the closest out of hundreds in a maze. Also, the algorithm might take more time if the closest item appears to be far away. Consider splitting the map into cells and flag cells as "has items" and "has no items", this may help you decrease the number of items to check against and build your graph.
Hope that helps.