A small independent company develops an innovative product, licensed under GPL. A sizable investment of many months of R&D to bring the initial release, and a non-trivial cost to maintain and develop further. The product is therefore priced to cover the operational expenses of the original development team.
Company B takes the product code, which it is free to do under GPL. It repackages the code, which it is free to do under GPL. And sells it at a significantly undercut price, which it is free to do under GPL. It has no trouble affording to since it has none of the development and maintenance cost.
So my question is how does a fairly small, independent company survive on writing GPL software? What are the common business models and practices for operating under GPL?
A clarification: The context is of an end user product designed to be simple and intuitive, rather than something complicated and difficult to deploy, manage and operate enough as to mandate perpetual paid commercial support, which is one of the ways fairly big and entrenched companies monetize open source code.