The file buffer size for each part file is FileBufferSizePref * 15000. You can adjust it in steps of 15000 from the settings only. So if the dialog says "300000", 300000 is used and the entry in the config file is 20.
When downloading, downloaded data is kept in RAM until it exceeds the buffer size (and also when the last flush is more than a minute ago).
This behavior was the same in 2.2.2 and before, code wasn't changed for at least 5 years.