To solve the root of your problem you could put Nginx in front as a proxy to handle your https requests.
So with HTTP you would have: Varnish -> Apache
And with HTTPS you would have: Nginx -> Varnish -> Apache.
Nginx (being a reverse proxy first and web server second) also has caching as well, although I'm not sure how it compares with Varnish.
I've replaced Apache with Nginx and use just Nginx by itself on my servers. Nginx can handle a lot more requests than Apache, and it's extremely fast, especially with an Nginx+PHP-FPM combo. Admittedly I've never used Varnish though.. But Nginx is awesome.