Flarum passwords are hashed with bcrypt. bcrypt I believe is being considered (a lot?) stronger than sha256 (without salt?) so I wouldn't recommend changing the password hashing algorithm. The best would be to compare the passwords when you have them in plain text during the login process.
How are you planning to integrate the two apps ? The recommended Flarum solution would be to use a custom login provider, the simplest being based on OAuth. With that solution you don't even need passwords stored in Flarum, you delegate login to your existing app.
Least recommended but feasable, if you need to hack the Flarum login process, it's possible via an extension. You could have a look at https://github.com/migratetoflarum/old-passwords for inspiration.
If you're just migrating users from that other app to Flarum and don't need passwords to remain in sync, then the Old Passwords extension linked above can be used to convert password at the next user login. sha256 isn't supported right now but you can open an issue or PR to get it added 😉
Regarding your last question, we have a few existing extensions for user profile fields, but I'm not sure if any is integrated with the register modal. If you write your own extension for it, you can totally do that. Extensions are very powerful.