Solution 1:

The following excerpt from howstuffworks.com gives some insight:

The phrase "God bless you" is attributed to Pope Gregory the Great, who uttered it in the sixth century during a bubonic plague epidemic (sneezing is an obvious symptom of one form of the plague).

The exchangeable term "gesundheit" comes from Germany, and it literally means "health." The idea is that a sneeze typically precedes illness. It entered the English language in the early part of the 20th century, brought to the United States by German-speaking immigrants.

For the most part, the various sneeze responses originated from ancient superstitions. Some people believed that a sneeze causes the soul to escape the body through the nose. Saying "bless you" would stop the devil from claiming the person's freed soul. Others believed the opposite: that evil spirits use the sneeze as an opportunity to enter a person's body. There was also the misconception that the heart momentarily stops during a sneeze (it doesn't), and that saying "bless you" was a way of welcoming the person back to life.

We now know that sneezing is a reflex action and is most often the sign of something relatively benign, such as a cold or allergy. A sneeze also can be provoked by being outside in the sunlight or from smelling a strong odor. Still, we persist in the custom of saying "bless you" or "gesundheit," mainly out of habit and common courtesy.

As to the second part of your question; according to me, it depends on the context. If someone I'm talking to sneezes at that moment, I say it.

Solution 2:

Why has been covered extensively in other answers, but I wanted to add something to the "am I rude?" part.

Liking to consider myself a logical person, insinuating that I believe in superstitions, like those described in other answers, seems like the rude action to me, not the other way around.

Solution 3:

Following is an excerpt from http://ask.yahoo.com/20060411.html

Another story veers toward the medical. Once upon an unenlightened time, people believed that the heart stopped during a sneeze. A hearty "God bless you" set the ol' ticker back in motion. Keep in mind these were the days before defibrillators and HMOs.

And This is what WikiAnswers.com says

There are several theories for this.

One says that the phrase "God Bless you" originated from an Islamic practice around more than 1400 years ago. According to Islam religion, when someone sneezed, he should say "All Praises to God" and in reply to him, on sneezing, the people would say "May God Bless You".

Another explanation is that when people sneezed it was thought that the heart would skip a beat and that instance would allow the devil to enter the body, so saying "God bless you" would keep the devil from entering.

It was thought, in the middle ages, that when one sneezed a significant amount of breath (the breath of life) could be expelled from the body and thus cause death. In which case one would go to heaven with God's Blessing.

Written records state that the saying goes back to the time of Pope Saint Gregory I, or Gregory the Great, who was Pope of the Catholic Church from 3 September 590 until he died in 604. When Pope Gregory ascended to the Papacy, it was just in time for the start of the Plague, so this Pope is unfortunately known as the patron saint of plague. He believed that constant repetition of litanies and unceasing prayer for God's help and intercession would help ward off sickness. On 16 February 590 A.D., Pope Gregory decreed that whenever someone sneezed, others should say "God bless you" in response. The blessing was given in the hope that the one who sneezed wouldn't develop the plague.

Perhaps there was more to this than people realized: it is interesting to note that the plague of 590 A.D. dissipated very quickly.