I think charging for tools does limit the potential user base of those tools. After all, why pay for an editor when vim is free? The same applies for a lot of development tools.
Another potential reason is that charging for something creates an expectation of quality and support. This attracts certain classes of user, but not everyone wants to provide this expectation. Giving the tool away for free helps absolve the developer of responsibility at a later date.