Uploading Audio files to EEPROM

So do you mean that I provide a +ve offset voltage to the wave and then store the PWM values at equidistant points of the wave in an array? and then playback is nothing but the values read at equal intervals of time?

Yes that is how recording and playing sound works. Once you read the samples you have to send them to a A/D converter of some sort

Now, does 100kHz mean 100,000 Samples every second?

No you get 100,000 bytes per second transfer. Then you have the overhead of having to ask for the data and receiving it. If the sample data is more than one byte this could take a long time but it also depends on your sample rate.

I have attached the waveform as an image.

Sorry but useless, you need the numbers. Also it looks like most of the click is just the start and the end discontinuity and nothing to do with the sin wave inbetween.