Despite a huge library of successful games, the Gameboy was deeply underpowered, even for its time. At its heart was a modified version of the same CPU that's still used in some graphing calculators.
Thrifty architecture created some benefits, like a lower price point and better battery life than its competitors. But that also made programming the games that much harder. As JackTech explains in an info-packed 12-minute video, everything had to be written in assembly language using basic commands that also had to account for the Gameboy's minimal storage.
Maybe that's why Gameboy games always seemed to have the best bugs.