Who pays for congestion? Optimal design of protocol fees

Also, I wanted to add a fourth negative point to the problem section of your post. Continuing from your third point, both Alice and Bob will broadcast their transactions in the first block, and hence, the fee will go up afterward. Therefore, none of them will broadcast anything in the second block, and then again, both Alice and Bob will broadcast their transactions in the third block and so on. This somehow creates and incentivizes an oscillating behavior, and whoever deviates from it will be penalized by paying substantially higher fees. Apart from the fact that this is an unnecessary volatility, see this: