Two main reasons that I can see why FLV is used in OBS as opposed to the others...
FLV is more resistant to crashes, either OBS or a system wide crash. MP4 files need to be closed out in order to work properly. If a crash occurs, the MP4 file is not properly closed out, and as such may be corrupted and unrecoverable. And FLV, on the other hand, does not need to be closed out, and will still be usable.
The second is as was stated above, OBS is a streaming application. Everything that happens in it is encoded in real time as the frames are rendered, as opposed to an application like Sony Vegas or Adobe Premiere, where the encoder can grab frames as fast as the CPU allows, ignoring the need to stream the data. Since OBS is feeding the encoder in real time, the CPU/GPU (depending on which you use for encoding) is limited by that time-scale. This leads back to my first point, the potential for crashing.
If Premiere or Vegas crash, more than likely you still have the completed Project file saved and you can simply redo the encoding process, no harm no foul, only a loss of time. When encoding streamed data, all of that content has to be done in real time.
Think of the difference like ripping a DVD vs recording it off of a TV with a camera. One takes very little time because the whole process is digital, whereas the other process is more time consuming because you are limited by the actual length of time the whole process takes.
Using FLV, if ANYTHING happens that could cause a crash, all of that progress encoding is not lost. With MP4 and *maybe* MKV (though I dont know on that format for sure), all of that progress is gone and has to be redone.
OBS Studio, however, DOES have a Remux option that switches the container format from FLV to MP4 by going to the file menu and selecting Remux recordings. There is no loss in quality, it is a simple switching of container formats.