@Patatas, Good point.
"Wallet should check the network congestion periodically and force to pay the minimum of x fees while sending a transaction."
That's an actual cool feature. Although, synchronizing would probably be an issue if not everyone shares their computational power and internet connection.
@crabby, How would you solve this issue from your perspective?: "All transactions need to be broadcast on the Bitcoin blockchain if you want to transfer Bitcoin."
(More people are joining the crypto-world and wallets are getting slower and more expansive).
"you can always use other coins to minimize the number of times you need to do BTC transactions" - > Thanks for the tip. : )
Open source.
The only way to change the behavior of the Bitcoin blockchain is to actually change the source code. So, in my opinion, the only solution for reducing the cost of transactions long term would be for the Bitcoin team to actually change the source. There have already been many discussions on what changes could decrease the transaction costs, so I don't need to go into the details. At this time, I don't think there is an application that you could build on top of Bitcoin that would be both 100% secure and reduce the cost of transactions.