From what I've read, most end users will get /56 blocks and larger organizations will be the ones to get a /48, so the potential end users is much higher than you've estimated.
Blanket policy of /48 per end user comes from a (now obsolete) RFC3177. All RIRs now have less generous recommendations - both RIPE [0] and ARIN [1] seem to operate in /56 granularity nowadays, which is a very sensible step forward of course.