Having lived in the south (if you can consider Charlotte the south ?), the “bless your heart” was thrown around a bunch. Mostly by the native southerners. It was explained to me that it can have two meanings...
1. Like if someone is going through a hardship, a person can show empathy by using the phrase.
”Tammy, I know you’re working 3 jobs to make ends meet after your husband fell ill. Bless your heart...”.
2. Can be used if someone is “special” or mentally challenged in some way. Again, expressing empathy (admittedly sometimes tongue in cheek).
”Tommy is in the 5th grade, but still has to wear Velcro sneakers because he can’t tie his shoes. Bless his heart.”