This is just my opinion, but I think to Nina, Beth was a representation of her own future. After Beth hurt herself, there was a brief scene of her face turning into Nina’s. Nina then panicked and walked out to the elevator.
Beth’s action was frightening enough but also I think it was because Nina was also picturing her (very) possible future image. She panicked and tried to reject it (by running to the elevator), but it followed her, and she had a hallucination of herself holding the same knife. Hence, I think Nina holding the knife was just a hallucination that comes from the fear of her tragic future. She then tried to wash away the blood and looked kind of guilty as she goes home, which is why we might think she actually did it to Beth.
But I think this is a bit similar to her hallucinations of stabbing Lily. Her hallucinations were so strong that she was convinced that she was actually holding a knife/piece of glass, with hands full of blood, and that she hurt someone. She also tried to cover the blood with a towel, and has the same guilty look when she had the hallucinations about Lily later on. But then it turns out that she did not hurt anyone but herself. I think this is the same with Beth, the subject of pain (the blood on her hands) was also Nina, not Beth/Lily, but it’s future Nina.
Hence, I believe that Beth was the one who actually hurt herself, because it would be harder to explain Nina’s motives if she’d hurt Beth, than seeing that it was only a vision out of fear for her future.