Most destinations have one calendar. Sanibel has five, and they do not agree with each other. Shelling peaks in the cool months when winter fronts blow in from the west. Birding peaks in roughly the same window but for different reasons, and adds a separate spring migration spike. Heat and humidity climb from April and do not release until late October. Biting insects follow the wet season and the still air, which is a different curve again. And hurricane risk runs on the Atlantic season, dated from the first of June to the end of November, with the statistical peak in the two weeks either side of mid-September.
Lay those five on top of each other and there is no month that wins on all of them. What there is, is a clear best compromise and a clear worst one.
The best compromise is late October through early December. The heat has genuinely broken, the water is still warm enough to swim in without thinking about it, the insects have eased, the storm season is running out, the winter birds are arriving, and the season crowds and season prices have not yet turned up. If you have flexibility, take this window.
The second-best is January through March, and it is the one to choose if shelling is the actual reason you are coming. This is when the cold fronts arrive, and a front that pushes a day of wind and sea in from the west is what loads a Sanibel beach. It is also the finest weather of the year, the peak of the birding, the busiest the island gets, and the most expensive.
April into early May is the other good window: dry, warm, water in the high seventies, prices falling after Easter, insects not yet serious.
The worst single stretch is August into mid-September, and the reason is not really the heat. It is that everything else stacks in the same fortnight: peak storm probability, the thickest insect load, the wettest afternoons, and the flattest, calmest Gulf, which is the condition that produces the thinnest wrack lines of the year. It is also the cheapest and emptiest the island ever is, which for some visitors is the whole argument.
One point that applies in every month. Sanibel's day is governed by the tide, not the season. A poorly timed week in February with high water every morning will produce worse shelling than a well-timed week in July. Check the tide tables before you pick your dates, not after.