I've never had a transaction stuck for so many days during congestion (no more than 7 days i think), but it's always good to have a good wallet that has RBF and/or CPFP, like Electrum, Bluewallet...
I found a complete list of open-source wallets (always try to use wallets with this feature). Normally, it's hard to find a wallet that doesn't use either of these, and if it doesn't, it's a terrible wallet that should be avoided at all costs!
Before making new transactions, always check the average fee rate requested per block. You can use the
mempool.space as a reference.
There you will find the pending transactions and fees, which are currently at 1 Sat/B (greenish cubes). The blocks with shades of purple are the blocks that have already been confirmed and the average fees that they (the miners) included in the blocks (which, at the time of posting, the last ones accepted are between 1 and 4 sat/B). You can use them as a reference, using between 2 and 4 sat/B so that your transaction doesn't run the risk of being in limbo.
If you set too low of a fee, your transaction might be pushed back since higher-fee transactions will take priority (what we call limbo in the mempool), since the Block space is competitive, and miners will always choose the transactions that pay more.