Gifts are fine. If a kid was looking for gift for his classmate that's what the kid would pick for his friends birthday. However Ralph is not his son's play buddy, and imo a parent should try to get something more memorable to his children than another piece of generic plastic. Xander's birthday in few days will completely overwrite these gifts. He is 4 he'll disregard them as soon as all the other toys in his toy box. So gifts are fine but are not impactful or special to Xander, they are only special to Ralph.
That's why parents get their kids bikes, trampolines, bouncing castles, tree houses, pets, costumes, big extravagant play sets that are too good to be lumped in with other junk, or other things that they will return to when ever they get bored with their generic toys. It doesn't have to big and costly, it can be something as simple as nebula projector for his bedroom on top of generic toys. These things are nice and kids love them for many years and even into adulthood if the damn thing doesn't break. Kids remember these gifts because they literally grow up with them. To be fair he is only 4 y/o, and there is still time for more memorable gifts.