Generally, no, a person is not required to pay money back before a prosecutor will negotiate a plea deal with them. It sounds like, however, she wants the case dismissed so if the only thing she will negotiate for is a dismissal then the prosecutor may not agree until the overpayment is refunded. If she was willing to take a conviction then it is possible the prosecutor would negotiate for her to repay the money over a period of probation rather than having to pay it up front. The problem is that a prosecutor will generally not agree to dismiss a case in exchange for repayment before repayment is made because if the prosecutor does dismiss, then they have nothing hanging over the person's head to make sure they actually do make the repayment. If the person is on probation, then they have a reason to pay the money back. Obviously, I cannot say for certain that that is what is going on here because I haven't talked to the prosecutor, but I suspect if she wants the case dismissed, that is why the prosecutor is demanding repayment, since it prevents the prosecutor from working out a deal where she makes the payments as part of a sentence
It sounds suspicious that he has not received discovery yet, however. Discovery is generally due within 30 days of filing a discovery request so if the attorney filed the request, then he should have received the information from the prosecution.
It doesn't hurt to get a second opinion from a public defender if she qualifies for their services. The PD might have a better relationship with the prosecutor to negotiate some kind of outcome for her short of trial
(though again, if she can't pay the money then it would be hard for them to work out something where a dismissal occurs and so the lawyer may just have to take it to trial in the hopes of winning to keep the conviction off her record).