Hi,
When I first joined our Society they operated a single server with about 10 end users, and they also relied on outside technical services. The drawbacks are likely similar to what you have experienced, waiting days on end for service and likely not being shown adequately how to use the system. Their solution was in hiring me as their tech guy, functioning in help desk and network administration, but further assisting in fundraising and community awareness where the position was to some degree subsidizing itself. And over that four years our network has expanded to two offices and increased servers and workstations. A total cost of ownership review at points along the way showed it as better economy in hiring an in-house tech versus a tech consultant.
But that is what worked for us. I have discovered some excellent resources here at TechSoup which might assist you in your pursuit:
Finding a Consultant
Do You Really Need a Consultant?
and a complete article list:
Consultants
You might find it useful to form a technology committee and review where you stand and where you would like to go in the future. Such a committee is of course, made up of volunteers, and in your enlistment process you may find the talent you need. I hope this helps.
Talk to you later,
James