Lets assume the mempool doesn't empty and for some reason my transaction fee is not enough, will my transactions be dropped and returned to their original addresses I sent from eventually? If that make sense.
The default "expiry" time for a transaction, that is the time at which an
individual node will "drop" a transaction from it's mempool, is set to 14 days for
Bitcoin Core nodes. Note that this is just a default setting, and is customisable... Node owners can set whatever they like, so there is no guarantee that any given node will even drop the transaction after this time.
Now, let's assume ALL nodes use 14 days. If your transaction was "stuck" for 14 days and was then dropped by every single node... then it would be like the transaction never happened, there would be no record of it and you could simply create a new transaction spending those UTXOs and it wouldn't be rejected as being a double spend attempt as there would be no record of the original transaction.
However, it's possible that your original transaction could be rebroadcast... either by your wallet or by another node... so that it is never dropped by any nodes and remains in node mempools forever. Attempting to then send a new transaction spending those same coins would likely be rejected as a "double spend" attempt (unless using Replace-By-Fee aka "RBF" to increase the fee).
There are also situations between those two extremes where some nodes will drop it... and some won't... In this case, it's possible to attempt to create a new transaction to replace the old. The nodes that dropped your original will accept it, the ones that still have your original will not. Either one of your 2 transactions could get confirmed at this point... most likely decided by which one has the higher fee, but not guaranteed.
As a user, there is nothing you can do to influence whether any given node drops your transaction or not... there is no "cancel transaction" option with Bitcoin.