I would have no issue changing the code to allow a 1 bitcoin reward for every block forever... to ensure a strong distributed mining community.
By then transaction fees will be enough. Either due to larger blocks or due to cumulative fees for settling 2nd layer solutions. In both cases due to the fact that the market will always strive towards an equilibrium of Bitcoin price and mining cost.
Another solution to a collapsing mining community would be to periodically change the proof of work.
That would definitely endanger network security and stability. Also there would be an unwanted incentive for miners to influence the decision which proof of work to use in their favour.