Yep, have a look at Protect, or SetAttributes with the Protected attribute.
Clear or ClearAll would then start issuing a message saying it can't clear your function because it's protected, which reassuring at first but may become annoying, so you could Quiet the Clear.