Before buying any hardware you should identify the bottleneck. Currently we have no information that https causes the performance problem.
So please check CPU, disk I/O, memory usage, network usage first. Which is near the limit? How much Swap is in use?
Also: do the pages you deliver via https have a significantly better (measured, not felt) performance when delivered via http?
BTW: what exactly do you mean when you write "very slow"? Are you talking about seconds? 10s of seconds? minutes?
As for caching: you can't cache the encrypted pages, since they are encrypted using a session key, which means the encrypted version of any page differs from client to client and from session to session.
You can cache unencrypted pages when they are generated dynamically (by CMS, web application, ...), but in this case you would have to rely on the caching mechanisms of the underlying application. Also in this case your performance problem would persist when using http (which is why I asked that above).