The problem is, and I think the last ten years have shown, throwing money at a problem does not solve a problem. If - and it is an if, I am aware not all homeless people fall into the category of being drug addicts or alcoholics - someone is on the streets due to an alcohol problem, no amount of money, or food for that matter will really help. The only thing that will make a difference is them not being an alcoholic. Money won't help there.
It boils down to choice - you chose for the homeless man you saw by buying him food. That was nice. Other people feel the money should have been his so he could have made that choice himself; or chose not to give at all, and I think all those choices are perfectly acceptable.
I'm not sure how old you are Seventh (and I honestly don't intend that to sound in any way patronising) but when I was in my teens/early twenties, I was passionate about a fairer society and one which was equal. I have now come to realise, quite sadly in a way, that once you start taking people's wealth away from them you remove the incentive for acquring that wealth in the first place. I was watching Growing up Poor the other night and felt quite sad, as all the girls featured on it had a roof over their heads and some form of income through state benefits which I didn't have at that age. Although I'm a very caring person and obviously didn't wish the girls any ill will, I did roll my eyes a bit and disliked myself for doing so.
If we look at your example of buying a necklace for a large amount of money - that could, in your eyes, be presumably shared amongst the people living on the streets or whatever, thinking cynically we could all do that. I COULD sell my house and give the proceeds to charity and live in a single rented room, I COULD only ever buy clothes from charity shops and save what I would spend in Monsoon, Topshop, Karen Millen, and donate to charity, I COULD get rid of my iPhone and only have a basic model. We could all cut right back, but we don't. Money ultimately buys you things, experiences and security. In this country, the system at the moment is that if you earn a lot, you give a lot, if you earn little, you are given a lot (in general terms, you understand.) It's as fair as it can be without it ultimately being a communist state.