Adding such a feature to bitcoin should be fairly easy.
You are waiting for tx1 to be accepted, and it is taking too long.
So you create a new transaction tx2. tx2 spends from tx1.
tx2 pays a bigger transaction fee.
Put both tx1 and tx2 into a message, and send it to miners.
Miners should be able to put both of these transactions into the same
block, and collect fees from both.
We just need to update the miner's software so that they can accept
lists of transactions that each depend on the previous.
We need miners to intelligently look at all the miner fees
in the list of transactions, and determine if it is worth it to include
the list in the block they are mining.
If you created mining software with this feature, it would be in
the best interest of every miner to use this feature, because
the miners can make more money.
If the transaction hasn't been confirmed into a block, couldn't you create A new transaction that has same or additional inputs (as needed) and includes the added or higher fee? Only one will end up confirmed, so neither way you are good, right? Or am I missing something.