If the fee isn’t written into the ledger, and it’s just the difference between the input transaction amount and the output transaction amount, how does the miner prove he has access in his wallet to the fee amount?
how does the miner prove he has access in his wallet to the fee amount?
Miners do not prove this. The ability to reap the difference in inputs and outputs in a coinbase transaction is baked into the bitcoin consensus rules. Any miner who was lucky enough to find a block can sum all the differences in included transaction inputs and outputs in a block and aggregate them in the coinbase transaction.
Edit #1: @eponymous's comments regarding potential reduction in bitcoin supplies if miner does not reap all transaction fees.
Suppose a miner elects to not reap all the difference in inputs and outputs in a coinbase transaction, then the supposedly total supply of bitcoins will be reduced. The 21M bitcoin supply is a theoretical limit that assumes that all miners reap all potential transaction fees and block subsidy rewards.
Example: Total difference in inputs and outputs is 1 BTC, but miner reaps 0.9BTC. Then 0.1BTC will be lost from circulation.
Edit #2: Included @pwuille's excellent explanation on the existence of 21M bitcoins
We have the rule for transactions that
txFee = Σ(inputs) − Σ(outputs)
However, the coinbase transaction is exempt from the above rule, but restrained by a rule on the whole block:
Σ(inputs) > Σ(outputs) − blockSubsidy
This latter rule allows the miner to send themselves all transaction fees and the block subsidy in a coinbase output. Coinbase outputs are only allowed to be spent after they have matured to 100 confirmations, but otherwise work just like any other transaction output. Thus, the miner can prove that the funds are his just like any other user.
The block subsidy follows the reward schedule: How many bitcoins will there eventually be?