Have you considered a hybrid of the two models? Have an open source framework, but build and sell closed source components?
I tend to find that business customers require a mixture of generic services and custom software. You can offer a basic set of functionality as open source, but sell customization or niche components.