Since 1) and 2) already has been commented, i'll focus on 3) and 4).
3. Adjust the block reward according to the mining difficulty.
This would destroy the 'fixed supply' property of bitcoin.
You could easily generate more bitcoin by simply inserting more hash power into the bitcoin.
This would have a negative effect on the price (dollar value would drop + volatility would heavily increase since the whole supply and supply injected into the network hourly would vary extremely).
4. Adjust the block size according to the mempool size so miners can keep up with high transaction volume.
This also wouldn't help the network at all.
If the blocksize would be adjusted relative to the transactions inside the mempool (which mempool? Each node has a different mempool. How would you reach consensus?) 0 to 1 sat/B transactions would be standard.
This would open up new attack vectors, since there won't be any mechanism against spam. The current mechanism relys on an attacker paying massive amounts of money to keep a spam attack ongoing.
We could also simply remove all transactions fees in this case. Same consequences.