I personally think that games and slightly more dynamic applications are better done in OpenFL. If you want to make an app that acts as a frontend to banking or social media software, then Flutter is probably your better option.
From my understanding, Flutter is more for making UI intensive applications, particularly using XML to place various widgets. It maintains the visual state of various pages and offers some degree of navigation between the pages in an app. I believe Flutter also offers interoperability with a variety of features for the platforms you can develop for. And at the end of the day, the Dart code you write is either running in a VM or using AOT compilation for the target platform.
Instead of pros/cons, you should probably weigh what you value more when it comes to how the two frameworks are maintained. Flutter has Google behind it, so you’ll likely have much more consistent support. However, even though it’s open source, you’re likely still at the mercy of Google to some degree, and Google has a bad track record of dropping projects at their discretion. OpenFL (and most other Haxe libraries, at that) is open source and maintained directly by the community as opposed to a major company. So bug fixes and features are likely to come in at a slower rate, but it won’t be the end if one developer bows out.