1. This is a term used by the people of the southern United States particularly near the Gulf of Mexico to express to someone that they are an idiot without saying such harsh words.

2. "You are an idiot but I like you and care about you so I dont want to hurt your feelings."

Little Billy: I am 6 years old (only holds up 4 fingers)
Scarlet: Oh honey, bless your heart, but that's only 4 fingers.
Little Billy tries again: I am 6 years old (this time holds up the same 4 fingers and 4 more on the other hand)
Scarlet: Child....Bless you and your momma's heart.

-A pregnant woman forgetting her keys or where she parked her car in a parking lot...
someone would look at you 'bless your heart'
-You show up to a Doctors visit on the wrong day or time-
the receptionist says 'bless your heart'
-Try to use a coupon that expired the day before... not knowing it
expired.. the cashier would say 'bless your heart'