I found a Champion brand runner's beanie at Target for $12. It is polyester fleece and spandex and covers your ears, forehead, and further down the back of your head than a cycling cap but is thin enough to easily go under a helmet. I find that it is perfect for that gap when a cycling cap isn't enough and a balcava is too much.

This isn't the exact same one, but is very close.
If you are looking for lighter, less expensive balcavas, check out a motorcycle shop. They have helmet liners which are very similar to a balcava you might get at a bike shop or running store, but at about 1/2 the price.