Most photos can be re sized to about 720x480 dpi, that's "dots per inch", how digital photos are measured. Most digital cameras record at 72 dpi; divide the 720x480 measurements by 72, and you'll get the pictures measurements in inches. If the photos are saved in ".jpg" format (what most cameras shoot and save in), you should have a file in the neighborhood of 50 to 100 KB . . . depending on photo content. 72 dpi is fine for the web, as it's not capable of much more. The human eye can detect the dots up till about 250-300 dpi. That's why if you print a 720x480 picture to a full 8x10 size you'll see the pixilazation.
If you have pictures that are only an inch wide but are 800kb, then most likely they are 300dpi pictures. Most programs allow you to resample pictures; resample to 72dpi and you'll have a much bigger picture.
I'm not familiar with the program suggestions so far; I've always used Corel PhotoPaint, but I'm sure they would suit your needs well. If you're shooting pictures you know are destined for the web (or email), then set the camera resolution to a lower setting and you won't have to use a program to resample down.
Am I just rambling now?
Good luck;
Brian