Why do Japanese words not start with p?

I hadn’t even noticed this until a commenter pointed out that the name “Pokemon” must be based on borrowed words (namely “pocket” and “monster”) because all words in Japanese with an initial /p/ are either borrowings or onomatopoeia. A quick bit of research revealed that the reason for this strange gap is that what is now /h/ (ish) was once pronounced /p/ (ish), and all the words starting with /p/ drifted to the present sound, leaving us initial-p-less (drifting of sounds like this being a normal linguistic process). I haven’t found out why /p/ does exist in the middle of Japanese words, but I imagine it’s because a middle /h/ is so damn hard to pronounce.