Is there a way to lock a folder's icon without making its contents Read Only?
You're exactly right. Here's how to lock the file that controls the icon:

Show hidden files.
Navigate to your folder.
There will be a file called Icon inside it.
Go to the Get Info window for that file and check the Locked checkbox.
Try to change the icon. You can't. Ta-da.