First of all, open it up to what ever engine you want, but you still must complete the race on one tank of fuel, about the same size as now. Here is the big kicker:
If you build motors, you must build 40. From those 40, you keep 10 for a season and sell off the other 30 to other teams in groups of 10. Any team can do as they please with their 10, testing, modifications, use one up per 2 races etc... but, once you run out, that's all you get.
This would appease everyone. The engine suppliers can innovate, but they still need to keep costs down so that they can sell them. More teams could theoretically have a shot at the top.