tl;dr: Anything is possible through custom REST endpoints, but you are better off using gravatar.com. I’m not able to provide any more detail than the following.
First of all, you’ll need to add functionality to WP to allow managing of avatars within WP itself, disregarding your app for the moment. A profile image field is an obvious approach that is doable. By default this is not supported, but it can be added. Letting random, un-vetted users upload images adds a significant security risk to the site. This is in part why WP relies on gravatar.com for this by default. There could likely be a plugin that does avatars in WP for you. I don’t know of any myself, but it seems like something that would have been developed, search around.
Once the basic functionality exists in WP itself, you can create custom REST endpoints to manage the same. FAIK, the theoretical plugin I speak of may include REST endpoints, IDK. One way or another, it can be done. I’m unsure of the specifics of transferring an image to WP from a mobile app. Browsers do this automatically, internally. We provide a file field on a form and the selected file ends up in the server’s temp folder. Your app would need to replicate this behavior. Much like how file downloads are managed, I would imagine uploads involve sending appropriate headers along with the file data stream as part of a POST request.
You are also going to need some functionality to crop and resize images. People are going to try uploading unprocessed 8+MB 16:9 images from their cameras, which of course are inappropriate as avatars. If you were to rely on gravatar, all of these messy details are handled, your app just needs an email address to fetch the image already properly processed.