How can I collect a large amount of sand/glass without ruining the natural environment?
Focus on breadth, not depth.
Skim a layer or two off every beach you find. You'd be surprised how for down the sand goes - it'll still look natural after you've collected all you need.
I think that unless you're able/willing to use console commands to spawn sand, the only way to obtain sand is to get it from the landscape.
You could 'cheat' the look of the landscape though - tunnel to the sand from underneath, take as much as you'd like, then build a platform out of rock (which is self-supporting), and lay a single block thick layer of sand on top to make it look like a sandy area! :)