Just putting it out there that older is no longer in mid 50's.
Any who I have worked with an older population in a nursing setting, also as a waitress. You'll not change these behaviors, that is not going to happen.
You must set boundaries, such as you're only available one weekend a month or whatever you feel comfortable with, communicate a set schedule and stick to it.
I am so in awe of your kindness, but you can continue to be kind and set some limits, such as eating at the table and revising the visiting schedule. In the long run she either find other company because she is unable to modify her social skills or she'll realize the value of your friend ship and comply.
Do not get sucked into poor such and such. I live in an retirement area with age restrictions, at 50 well into the 70's she could be doing volunteer work and still be competent and competitive in the work place, she choices not to and that is her burden not yours.