You listed most of the things I'll use it for. Mostly, usmash. If i think someone will come in with an aerial I can cc and then try to follow up with something, i'll cc->usmash them. Or if they come in with a projectile (laser, turnip, etc.) to protect themself, cc->usmash if I think it will still beat their approach.
CC->dsmash is also ok, but I probably rely on it too much. Against better opponents it will often just get you shieldgrabbed.
CC->dtilt works alright against other tilts. Also works pretty well in pikachu dittos i think. Edge of dtilt will usually hit, and that will push them just far enough away for you to be in position for a nair approach right after (or just give you space if you need it).
CC->uair is alright if someone is trying to overshoot you with an approach. It's usually worse than just shield->uair, but it could mess up their l-cancel timing, or the nature of the aerial might push you back slightly still and help you hit the uair.
Overall, I think the main issue with his cc game is that it requires him to take damage, and pikachu doesn't like taking damage. It can pay off if it lets you get a good usmash or start a combo with uair or something, but generally these options aren't quick and/or strong enough (as you mentioned) to make good use of ccing something. It's almost always better to shield, and I'll usually only cc something if I want to mess with my opponent's l-cancels or if my shield is already low and i'm worried about shieldstabs (and still have to take a hit).