Flash is program memory - difficult to use from a running progam without re-writing the bootloader.
What does the bootloader have to do with this?
Only code executing from the boot loader section of memory can write to program memory (including itself), so although it is possible to self-modify program memory, you'd have to write your own code into the area currently occupied by the boot loader to allow yourself to do this.
Again, if you have to ask the question, you're probably nowhere near ready to do it yourself.
Note, however, that flash memory has a poorer erase/write cycle spec than the EEPROM, only 10 000 cycles guaranteed.