I understand your frustration. Seems like things are expanding a bit past your expertise. I'd suggest you consider hiring an IT Consultant to advise you or show you HOW to do this.
As an IT consultant myself.. here's what I would suggest...
1) Buy a NAS or SAN with a decent amount of Hard drive space in a RAID array. There are several products that make this no more difficult then configuring a wireless router. This will make your DATA independent of your servers which is key for the NEXT step.
2) Virtualize your Server so you can run multiple roles on 1 physical machine. This is better then giving 1 physical server multiple roles for several reasons. A) if a single virtual server goes down, only 1 service is affected, verses everything. B) It allows you to patch and reboot individual servers on your own. C) You can even bring up "test" servers to test new things without messing with the existing File Server. D) It allows better monetarization or "Return on Investment" (RoI) E) It is the way the industry is going.
There are several Virtualization platforms out there. Zen, VMWare, Microsoft's Hyper-V, even free Virtual Box
VMWare has several FREE products they offer.. I'd personally recommend ESXi free.
3) Create Virtual Servers for each TASK you need. File n Print server. VPN, Domain Controller (if you want to use Active Directory) a WSUS server, maybe even a WDS server.
4) Point the Virtual Hard drives of the Virtual machines to the NAS or SAN where you have all the storage space. This makes the servers and their data more mobile. IF you upgrade your server in the future you can easily "attach" the new virtual machines to the new HOST computer. No longer think of data as having to reside WITH the server.. data and the physical machine are just files.. files can live anywhere you want on your network.
5) Consider breaking up the OS partition and the Data partition onto separate virtual hard drives. I usually call the virtual C:\ the same as the server name and D:\ where I keep the data the servername with DATA appended to the end. This allows you to reinstall the OS at anytime, should a server get corrupted OR attach that data to an existing virtual server without the bloat of the OS coming along for the ride. Each virtual server will have 2 virtual harddrives. one for the OS and one for the data.
6) Set up a bunch of Batch files which are in the Startup folder of each computer which automatically map drives to specific folders on the server. 1) one called Common which everyone has. 2) one called "shares" or "projects" which is further broken down into specific groups like \Accounting or \HR or \Facilities
STRONGLY encourage people to NOT save to their My Documents folder and use the Common or Dept. Specific folders instead.
You may even assign each person a "Home" or "user" folder with their name which only they have access to like \Share\Mike - would only be accessible to Michael and no one else. This is helpful for supervisors who may need to store confidential employee reviews and such.
7) Purchase Back-up Software OR maybe your NAS comes with its own backup software built into it. There are many free backup programs.
8) To reduce cost of all these Virtual versions of Windows.. think about buying a Windows Enterprise license which allows you to run unlimited Virtual OSes on the same physical machine using Microsfot's Hyper-V virtualization software. Huper-V is only available on Windows Server 2008
2003 only had "Virtual Server" which still required you to buy individual licenses for each separate machine.
____________________
I agree that a hosted Exchange would be good. Running Exchange is almost a full time job in itself.
I'd use a commercial Router but run my OWN DHCP server so I can better control DHCP reservations, IP assignments, etc.
Think about reserving blocks of addresses for specific devices so you can tell a device simply by its IP address and reserve some for servers.
For example: 0-100 = workstation computers. 101-150 = Printers, 151-250 = Servers. 251-254 = Routers and Switches
Of course adjust those as needed depending on your situation.
I'd SERIOUSLY consider running an Active Directory domain. It makes managing 35 computers MUCH easier, once you get it setup.
Enforcing policies is easier, Security is better, user permissions are easier, deploying software remotely, networking computers, etc.
I'd seriously think about getting at least 2 servers and either a NAS or a SAN for data with 1 terrabyte of space in a RAID 1 or 5 configuration. Some NASes use "RAID X" which is a proprietary hot-swappable mix and match RAID mode.