I am currently the supporter of a web service which has several resources supporting CRUD operations. I discovered that for some resources, a few of these operations (but not all four at the same time) are unused by the consumers.
Which of the following should be preferred?
it is more important to have the full set of operations (GET, PUT, POST, DELETE)
It's not particularly important to have a full set of operations. In fact, it is documented in the HTTP specification that most resources won't support DELETE
Relatively few resources allow the DELETE method -- its primary use is for remote authoring environments, where the user has some direction regarding its effect.
if it is only for some manual testing.
Testing and operations are perfectly valid reasons for supporting resources and operations that don't directly drive revenue.
Also: cool URI don't change. Backwards compatibility is an important idea in the REST architectural style, the consumers' view of the web isn't supposed to break for no good reason.
One thing you need to be careful about in retiring support for an operation is understanding whether customer's don't use the operation because they don't need it, or if they don't use the operation because the circumstances where they need it don't arise often.