I get this question a lot...
How can we hide a field from a specific user, or completely from the edit or new form?
Well the hard way (and SharePoint approved) would be to write some .NET code against the SharePoint API and changing the field visibility - I will not go into it now.
Other way - still hard, is to change the field CAML definitions (Xml files) - also for existing fields not recommended at all - I will not go into it now as well.
It is not perfect, sure. It can be fooled, right.
But for those of you that just need it for cosmetic reasons mostly, this is the perfect solution.
I actually covered that in an older post, I just think its title was not clear enough - please follow this link for the complete how-to manual.