10 images at 2-3 MB will be 30MB it will not be efficient with ByteArray/Base64. And may cause the app to crash.
The post above from Douglas contains useful information on multipart. Multipart request is just a regular request but with multiple items separated with a boundary. However the code linked still converts it to a byte array in the end before posting. (So I think its equivalent).
FTP doesnt sound bad as it solves some security issues too.
Otherwise maybe you can upload them one by one?