Normally, the visibility of a field can be controlled from Object level permissions, Field level security, page layouts and, in some case, by encrypting them (so it would visible to only those assigned with View encrypted data
permission). However, there are some standard fields that are marked as required by Salesforce themselves and none of the above mentioned options can be used to control their visibility. Such fields are identified via a blue dot in the page layout (edit mode). Your requirement was posted as an idea 12 years ago, but was not been prioritized over other features like dynamic pages. Consider upvoting this idea.
If you can TURN OFF Salesforce classic for the entire org or for the sub-set of users (ref: Turn Off Salesforce Classic for Your Org & Make Lightning Experience the Only Experience for Some Users), then you should be able to do the following:
Create a default lightning record page.
Upgrade it to dynamic forms and break up the record details page.
Set field section or field visibility for UnitPrice
field based on user permission or profile. (Note that you may need to create a clone of the existing profile, assign it to the sub-set of the users and use this new profile to define the visibility condition.)
Detailed documentation on the dynamic forms and step wise guidance to implement it can be found here & here.
Update: As pointed out by @DaveSmith, dynamic forms is not applicable on standard objects at the moment. However, it will most likely become GA with Spring '21 release (Feb '21).
The above mentioned approach doesn't work with classic page layouts, so it will not work if the user is able to switch to salesforce classic.
If you can't TURN OFF Salesforce classic for the entire org or for the sub-set of users, then approaches to try out are mentioned below. I've not actually tried out these options and there will be quite a few limitations associated with these approaches, so I'll leave it to you for further exploration.
- Custom record detail using Visual force and try to hide/ mask the field.
- Encrypt the field using apex Crypto class, so that it will can be masked for specific users [AFAIK,
UnitPrice
field isn't one of the standard fields that can be encrypted OOB].