Since you seem to be intent on being a robot with regard to personnel decisions, there is only one question to answer: Is your company going to go down the tubes if he/she leaves? If so, do what you can to keep them. If not, cut ties and move on.
As an aside, I find it humorous that you're consulting an anonymous online message board for this type of advice. Surely you've handled more difficult problems than this in growing to a 50 person company?
People leave for a lot of reasons, and not having opportunities to grow is one of them.
You want to be equal? Everyone with the title Senior Staff Engineer gets to work on super awesome forward looking new space car. Or maybe just 20% time and a ton more stock options.
In which case let them leave and replace them with another equal developer. Though I am confused as to why you call them one of your best and yet say all developers are equal.
As a practical example, Dynamighty listed every full time Dynamighty worker in alphabetical order on CounterSpy, but then called out individuals by their major contributions within the longer credits. It's not a perfect system, but it provided a good balance between giving due credit to folks who worked long hours for equity and those who were making normal salaries the whole time.
Perhaps importantly: maybe "lead" roles no longer have any meaning, but if you are determining the engineering schedule months in advance, in enough detail for him to know it won't be interesting to work on, he could be frustrated by the micromanagement (whether it is real or only perceived is something I cannot know).
Look at it this way: You can give him 20% time or he'll give you 0%.
Does this seem fair?
Why is it fair to increase the wage so slowly? Either less experienced developers are not worth the money to begin with or someone, somewhere has an idea of what the max cap of a developer is, and sticks to it.
Anyway, you're asking a room full of developers what they would want and they're telling you. 20% time is a solution that works. Toiling away on the same problem day after day sucks and it gets boring. 20% time breaks up the drudgery.
I suspect that you don't want to solve the developer's problems though, just your own.
Management is hard. We're all learners when it comes to working with people, especially when some of the people are smarter than we are. Keep learning!
Personal attacks are not allowed on Hacker News.
As far as "special treatment" goes, why not extend this to all the leads? It seems reasonable to have these folks pushing the technical boundaries for the company.
And it doesn't have to start at 20%; if your core product can't afford everybody to take 20% time toward interesting things, then 10%.
you could compromise, one day every other week?