The problem you have is that the barrier to entry for a competitor is zero. Equally the costs for a competitor are always lower than yours.
As long as you are small and niche, it's OK. But if you "prove the market" you basically allow company-B to do what you do, literally exactly what you do, but without the development overhead. Indeed company-B will likely be founded by an ex-employee of your company.
Let's say you charge $100 for support. $50 goes to the support tech, $50 to the development team. Sooner or later a support technician figures out he can charge $75 per hour, and keep it all.
Equally because you currently charge only for services, not licenses, the day support stops coming in is the day the company closes. There's no reoccurring income, so the developers are the first to go.
Clearly the model -does- work, especially when the project is new and things are moving fast. But it's hard to grow.
Naturally there needs to be some incentive to keep the support staff in-house. Hence various non-Open-Source tweaks to the license to try and take other companies from taking over your turf.