Truthfully, you just cannot dictate what people give as gifts, or whether they give at all. You said you didn't want gifts, but then people did it anyway and you were annoyed that they were inappropriate and came without gift receipts. So were you hoping no one would give gifts, or were you hoping you would get stuff you could return for cash? I'm not clear. It seems like you wanted it both ways.
The assumption with all gifts is that they will be appropriate and you will enjoy, appreciate and keep them. I know that's unrealistic sometimes, but that's what a "gift" is. A gift is not the price of admission to a party, and it's not a quid pro quo for food and drinks (and in the case of kids, a goodie bag). A gift receipt is really an extra that should occur rarely, not something that is assumed. It makes sense for people who are choosing clothing but don't know the child that well and could guess wrong (although truly well thought out gifts will just be in a larger size so the child grows into it). But we really have to get past the idea of being annoyed that the gifts were inappropriate or regifted when we didn't want any to begin with, and we can't get irritated that they were so bad we had to give them away.
I believe in small parties so there is less likelihood of duplicate gifts, and a greater chance that you can manage to write thank you notes. I really despised older kids' parties with 25 kids, 25 gifts that get put in another room, with no chance for the recipient to thank the givers and the givers to see the recipient's joy on opening them. We never, ever had huge parties. We never told people what to do about gifts. We just felt it was important to leave it up to the guests, for our child to learn to express gratitude and to write thank you notes (by age 4, he was dictating a comment or two which we wrote down and mailed with a few added sentences of our own). As he got older, he learned that he didn't play with the gift or cash the check or redeem the gift card until the thank-you was written. And if he didn't want to write it, we told him he had to send the gift back to the giver with a note about why he didn't want it - so either way, he was writing a note about something! Of course he chose the thank you.
You just can't ask people to give to a charity for regular gifts. I think you CAN ask for donations you are collecting for a cause, but that's more effective with an older child. We see a lot of kids collecting used items (towels and blankets) or food for the local animal shelter in lieu of birthday gifts. But for now, I think you just don't put anything on the invitation. Close friends or relatives might ask you the child's size or preferences, in which case you can say, "Oh my, a gift really isn't necessary." Then they insist, and you reply "Well, he really likes Thomas the Tank Engine" or "I think he would enjoy a puzzle." That's it. If they don't inquire privately, then I think you leave off the "no gifts" wording, the request for cash donations, or a targeted request such as the one for books. No matter what you get, if you can't use it, there's always a charity that can use it. Just tuck it away and donate it in November to a charity collecting a variety of gifts for needy kids at Christmas.
As a side note, the wedding invitations have become huge envelopes with gift registry info, bride & groom websites, an RSVP card/envelope (stamped) and a list of hotels - it's pretty easy to miss the actual invitation, and we've forgotten that we're supposed to have good enough manners to actually reply without a yes/no card, a deadline and a stamp provided for us!