What for and how you use your network are very important in answering this question.
The first thing is switches and routers do two different things. Routers act as a bridge (or 'gateway') to the Internet with technologies like
NAT and often act as
DHCP servers, making network configuration automatic for all of your computers. And don't forget the other thousand things they provide, such as firewalls, filters, schedules and more. Out of courtesy, most home office routers have a built-in hub or switch giving you 4-5 ports or so.... But buying a 20 port router isn't necessary or even recommended..
Switches are very basic and fairly dumb, although more efficient than hubs (which are not recommended). Simplified, about all they do is 'plug stuff up' together. Switches do not 'route' Internet traffic or provide firewalls etc..., which means if you want all of your computers to get online or have other advanced network features, you still need to have a router / gateway.
Ideally, you should have a router and a switch working together. Invest in a good router - it doesn't matter how many ports it has. The router will take care of the routing and automatic network configuration stuff. Then invest in a single gigabit switch with plenty of ports. Gigabit or even higher would be preferred, since 100mbps is old news these days. You may kick yourself later on for not buying the Gigabit switch, which is probably just a little bit more.
18 PCs have the
potential to generate a lot of network traffic. If performance and reliability are important, you'll definitely be upgrading that 4 port Netgear router to something more... business class.
There's an alternative to buying a new router by configuring your server to perform DHCP and Internet routing services. However, from a security and reliability stand point, I would discourage this. It would be better to have a seperate server or router serving internet. This is mainly so your current server can do what it does best without interrupted - which is probably serve files.
So in a nutshell, my opinion is get a good router, get a decent switch with enough ports and stick with leaving your server doing whatever its doing at the moment.