None of these other methods will work. Even a person with the strongest willpower might one day want to sell their Bitcoin. That's why if you want to hold your Bitcoin long-term, send it to the wallet of someone you trust and agree not to get it back before a certain period. Another alternative is to send it to an address you created, store the key on a flash drive and put that drive somewhere you can't easily access. After a certain period, you can go there and get it back.
There's no other way. If your Bitcoin is somewhere you can reach easily, there's always a chance you won't be able to resist selling it.