I doubt that 1&1 will continue this indefinitely, although I hope they do for the sake of anyone wanting inexpensive domain registration.
As a business you can only sell under cost (at a loss) as long as other revenue makes up the differential.
In plain English, 1&1 offer cheap domain registration because they rely on the revenue (and resulting profit) brought in by people buying web hosting accounts with them.
If nobody arranged hosting through 1&1 they'd be charging the same or thereabouts as anyone else.
Many people also shop for the sake of convenience. I've done it myself, where a domain was registered and a hosting account for it wastagged on almost as an afterthought.
I also imagine that comparatively few people even know about or want to get involved in DNS settings and adjusting them.