You could just cut the straight hair to the neck part which could be so matched with your heart-shaped face and your glasses. If you want to look better, you could also choose to do the makeup at the eyes. You could just use the eye shadow and eye liner to make the eyes look bigger and beautiful. You could have a try.
Heart shaped people usually have a wider forehead and gently narrow down at the jawline. According to the facial features, people with heart-shaped faces shall avoid short, blunt-cut bangs and harsh, choppy layers. To get a good look, you can use side-swept bangs, brow-grazing fringe, a strong part and hair that falls at or below your jawline. That will make your look good. You can have a try.
OK, sounds like you are going to make yourself appear more attractive by changing your hairstyle and make it compatible with how you dress up and what kind of glasses to wear. Anyway, from what I can see, it would be wise for you to have some kinda short bob, which would make you appear feminine and ladylike. You can also dye your hair and get some nice dress to fresh up.