But is this even safe and reliable? I don't want to save my passwords in a third party apps. Currently I don't own any secondary device, so won't be able to use the 2nd option.
ps: I don't know how self-hosting works. Never tried it.
Self-hosting is when you run the service on your own computer.
Bitwarden is open-source, so you can use a spare PC as a server and install it there. Or a virtual machine with Virtualbox or something with bridged networking (only if your PC has at least average amount of resources).
Keepass* XC (I misspelled it, it is not keypass) is also open-source but it's simply a stand-alone program that requires no server, you install it on your computer and it saves them in a file which you can protect with a password so that nobody else can open them.
Since Keepass only runs on a desktop, you should use an Android port of it such as this one:
https://play.google.com/store/apps/details?id=keepass2android.keepass2android&hl=en&gl=US , although
since you periodically wipe your device, you should at least get another secondary device to store your password file on (PC, tablet, or something else).