> So what happens when the last block is mined?
The best estimate is that the last block will be mined around 2140 based on the block reward halving frequency of four years. According to math and knowledge that there are 32 halving events, in 2136, the block reward will yield 0.00000168 BTC per day, which is 0.00000042 BTC per block.
We will all be dead ;) but to answer your other question yes transaction fee's will continue to incentivize miners but who knows where the protocol will be by then. It could be completely changed.