I would like to know if it is possible to create a programmable ROM from transistors and logic gates? Or, is it possible to create a type of persistent storage similar to Flip Flops?
If the point is to hand-build it, try a diode matrix:
A diode matrix is an extremely low-density form of read-only memory that was used in computers in the 50s through the 70s, before EEPROMs were invented. (They are actually still used, but only inside microchips, not using discrete diodes.) Each bit in the ROM is represented by the presence or absence of one diode. The ROM is easily user-writable using a soldering iron and pair of wire cutters.
PROMs work by having fuses that are selectively blown to block or pass charge to indicate logic values. EPROMs, EEPROMs, NVRAM, and Flash all use charges trapped in semiconductor islands that selectively block or allow charges, and cannot reliably be replicated using discrete components.