In recent versions (2.1 series) the response object is called beresp, and something like this in vcl_fetch does work (I just tested it on Varnish 2.1.0):
unset beresp.http.Server;
I installed the version you're using (1.1.2) and got the exact same behavior you mention; it would appear the unset keyword doesn't work, at least not in the vcl_fetch function. This is odd, as at least one example I found mentions using unset for that exact purpose.
If possible, I'd suggest upgrading to the latest Varnish, as I think it unlikely that, if the unset behavior you observed is a bug, the team will be willing to fix it.
Barring that, you might want to try setting Server to something else:
set obj.http.Server = "";
set obj.http.Server = "BogoServer Whatever";
Assuming your objective is to hide the server signature. If what you want is to eliminate the header altogether, I'd venture to say it can't be done with your version of Varnish.