I have encountered this situation previously, and after having it again last week, finally, I'd like to speak up about it.
I was at a store, where I was picking up the order placed online. I needed the message with the confirmation that the order was ready for pickup. Unfortunately, the message was sent as an html, with plenty of HTML-bloat, images, etc. (damn modern barbarians!

), so the total size of the message was about 0.5 MB. I didn't really want to blow 0.5 MB for just a few lines of the order confirmation number.
I have a setting to download only 1KB (or is it 2?) while on mobile network. And that was just not sufficient to catch what I needed. When I opened my message, I had an option to download the rest.
What would've been nice is to have: "download N more kB", where X is the the step equal to the original size. However, I suspect (from my vague knowledge of IMAP protocol), that the client cannot request downloading X kB starting from somewhere in the middle (i.e. just the portion between N kB and 2N kB, or between 4N kB and 5N kB). [Is this correct?]
So, the next best thing would be to be able to specify:
I want to download X kB now, where I can choose "X" from the option similar to the config options (understanding that the app will need to re-download the beginning of the message again).
It might be noteworthy: somewhere there, there was an almost direct link to change the setting for how much can be downloaded. Unfortunately, changing that doesn't lead to re-downloading already downloaded messages.
So, Kostya, unless I am missing this possibility somewhere, would you consider implementing an option to "download [X] kB now" for partially downloaded messages?
PS. 0.5 MB might not be a huge portion while I am on a domestic network, and I have a 1GB monthly allowance. But I had a similar experience while traveling internationally where my entire allowance was 100 MB (and I needed to pull maps occasionally, etc.).