Hard disagree on Lilligant. It gets quiver dance before level 30, so it can sweep pretty much every fight in the game regardless of whether they resist grass or not. It also gets petal dance, which is just as powerful as solar beam but without the need for sun. For that reason, own tempo is better than chlorophyl.While I agree with you on paper, I think for in-game play these distinctions matter much less. Physical and special are really distinct in competitive play where opponents are EV-trained, but in-game the difference between using Seed Bomb and Energy Ball is barely noticeable. Similarly, Whimsicott being a good support Pokémon is cool in competitive doubles, but in-game you still just use SunnyBeam, just as you also do on Maractus and Lilligant. Amoongus and Ferrothorn are, however, fun defensive options, and I do think Sawsbuck is an exception to the rule with its Normal-Type STAB, Jump Kick, and Megahorn. It’s a fun Choice Band user if you go out of your way to get one from the Battle Subway, which is pretty unique for a Grass-Type Pokémon.
Basically I agree with you with regards to competitive, but in-game not so much. Lilligant is by all accounts a Bellossom in-game.
What's the issue with sunnybeam anyway? I think it's more fun than just spamming attacks, and it can be very powerful. I do agree that gen 1 and 2 over-rely on chlorophyl, which makes the common grass types in those games feel very samy, but that's mostly because there weren't that many different ability options back then. Gen 3 actually puts an interesting twist on the weather abuser concept by not just making chlorophyl sweepers, but also a swift swim and sand veil abusers. Cradily also stands out as an interesting mon, and Sceptile has a unique statline and good coverage in ORAS. I don't know, I just don't really see the 'grass types are boring' thing outside of gen 1 and 2.