For me the biggest problem with the current regulations is the development cap. The current token system punishes engine manufacturers that have fallen behind. Honda for example, need more tokens than there are available, and that's just to catch up! The whole engine freeze and token system is crippling the sport. The only reason teams are allowed to use the tokens during the season this year is because of a loophole in the regulations. Imagine if that loophole hadn't existed, Honda would probably be finishing behind the Manor GP cars...
IMO the first step that needs to be taken is to tear up the engine freeze and token system. Allow open engine development throughout the season until all manufacturers catch up to each other and reach a point of diminishing returns. Keep the cap on the number of engines per season, this will stop silly things like teams brining a new engine for every session of a weekend. If a team did want to bring a new spec engine over and above their season's allocation, they could do so but obviously take a penalty. And finally, put a cap on the cost of customer engines to prevent the manufacturers passing the development costs on to their customers.