Great question!
You're correct that all of these words have the same general meaning but different connotations. I will tell you what these words mean to me but not everyone interprets these words in the same way. The differences between many of these words are how "baby-ish," "feminine," or "masculine" they are.
An object, like the sunset or a house, is more likely to be: beautiful, lovely, or attractive
A baby kitten or puppy-dog is more likely to be: cute, adorable, or pretty.
A kitten or puppy will not be: charming or handsome.
A young girl might be: cute, adorable, pretty, lovely, or beautiful
A grown woman might be: lovely, pretty, beautiful, attractive, or charming
A girl or woman is never handsome.
A boy can be: cute, adorable, lovely, or handsome
A grown man might be: attractive, charming, or handsome.
Boys and men are usually not called: lovely, pretty, or beautiful.
"In addition, if i say 'this boy is cute', comparing this to 'This boy is handsome', what's the difference?"
Cute is more dainty, precious, amusing, or childish. This picture is very cute. Click here Handsome is more healthy, strong, and well-built. This picture is very handsome. Click here
"Which word describe 'inside' of a person, which word describe appearance of a person?"
All of the words, except charming, can be used both ways.
Better for personality: Charming, adorable, attractive
Better for looks: Cute, beautiful, pretty