I daresay,that you have loads of what you call useless stuff, because rather than earning them steadily, you have simply, mostly, bought them.
You dont know they are useless because they may create a need for them sometime.
You are right it makes no sense to give rewards that there is no use for, but this happens from the moment anyone starts playing the game,and would imagine it is set up for all players,so it doesn't know what a specific player still needs.
Apart from the achievements, how often have you recalled troops, burnt down a building, renamed your town, hero, whatever,or used a one minute boost ?
In most cases seldom, not for a long time, or never.
As to why you cant give them away to the needy, I suggest you check out all the previous threads on this idea.
To save you the bother...
The simple answer is... so other players have to spend,time or money, to get them.