Most of your requirements for the STM32 are bog standard.
Not all STM32's have built-in Ethernet though. That is only for some of the bigger chips.
If you want a development board, then start by combing through the boards supported by mbed:
https://os.mbed.com/platforms/From there you can select boards from ST and with Ethernet, and then there are 8 left:
https://os.mbed.com/platforms/?q=&Communication=Ethernet&Board+vendor=STMicroelectronicsPlatformio also supports mbed, but I'm not sure if all mbed boards are present in Platformio.
Most STM32 chips are very similar. If your particular board is not present in Platformio, but it's brother, sister, or cousin is, then it's likely you can use the setup for that other board with minimal changes. With a bit of luck, the biggest change is an on board LED which is not present, or on another pin for your board.
There is also a tutorial on the Platformio website somewhere for modifying, or making your own config files for other boards. The base of platformio is just a bit of python and json configuration files.