How should I paint a stain on a white wall without having to repaint the entire wall?
First, you should fix the source of the stain. If this is water damage, it will reoccur until you stop the water. Then clean the surface, apply a primer, and then some matching paint. To get matching paint, remove a small chip of paint you'd like to match and have the store give you a custom mix based on your chip. When applying paint, you should feather it into the rest of the wall so that any transitions become difficult to see. Note that most people would repaint the entire wall since it isn't much more work and the result looks even better.