The way you can set the input code not-editable is to remove it from the timesheet. In the new UI timesheet configuration is not available only for the admin in the Classic UI administration for all users. In the Classic UI a user has configuration in timesheets so that the user can put the Input type code back if the admin has removed it.
The tool has no supported way of doing what you are after as far as I know. I have not looked at the new teams in 15.5 see if they have team level Input type code.
Unsupported because it can corrupt your system is to allow the PM to use the Classic timesheet and configure it for the user in question to include Input type code and the PM to set it different from the default.
Another catch is that I did not check if that configuration displays the Input type code in the new UI as well. My guess it is not as the admin configuration for timesheets should be for all.
Using a process could do that. Timesheets can be XOGed so a gel script could create the xml file and write it in. That is complicated.