Welcome to the posting community!
Taking your questions in order:
When your MIL has been upset that you each bring similar dishes, but yours is apparently the preferred option - had you each known what the other was bringing? If not, while I can understand MIL being a bit hurt that her dish wasn't acclaimed by popular demand - not anything you could do, and not your fault. If you knew what she was bringing, I would suggest you bring something different. And if she knew what you were bringing, but you didn't know what she was - well, she declared an unofficial "Iron Chef" challenge and lost.
For having enough and appropriate beverages for a llarge gathering, if your SIL is hosting and this has been an issue before, you could ask SIL what the planned beverages are and if you can bring anything to supplement (if you wish). If the picnic you mention was at SIL's, I would think tap water was available, but if the picnic was at another location, or such an activity will be in future, just ask who is bringing bottled water.
As for serving dishes, I would only take expensive serving dishes where I did not already know the return of them could be an issue. So, I would suggest some large disposable containers in future, or keeping an eye out during clean up and being prepared to say you *need* the serving item in question, so will be taking it back then.
For disposable silverware, you could offer to bring some if you wish, when SIL is planning next get together, but I would caution against routinely bringing that, or water, or any basic not discussed in advance with SiL each time or you will become "silverware/water girl" and it will be *your* problem rather than the host/organizer's for all future events.
As for leaving, taking, or sharing leftovers - I don't think you are always obligated to leave leftovers, though it is nice to do so. If you are prepared to not take leftovers with you, and the hosts don't want them, sharing with guests, MIL, or others who do want leftovers is nice - not an obligation, but nice. Just don't let the leftovers be taken in your serving dish.