It really boils down to needing to support legacy devices and cabling. Cisco has a pretty good document, Ethernet Technologies, which explains a lot in depth.
Ethernet has been around for a very long time. It was commercialized in 1981 at 10 Mbps. At first, it was pretty expensive.
I remember ethernet cards costing $750 at a time when that was a lot of money. it took many years and a lot of argument for it to reach 100 Mbps, and a little while for the current 100BASE-TX standard to emerge as the winner. At the time, it was pretty expensive compared to 10BASE-T, so it was relegated to data centers and high-speed needs for a long time. The ports were built with backward compatibility with 10BASE-T because that was the most prevalent out there, and you may need to connect with that from a switch, router, etc.
The price of 100 Mbps finally came down when 1000Base-T was released. Again, it was quite expensive compared to 100Base-TX, and it remained in data centers an big servers for a long time before the price came down. And it needed to be compatible with the more prevalent slower speeds.
The R&D has already been done for the slower speeds, and ethernet is basically built on a chip now, so it really doesn't cost any more to offer the slower speeds since there are still legacy devices around which need the slower speeds.