Unless you show that there was an intention to cause prejudice by waiting, it does not matter. What I mean by intention to cause prejudice is for example, they waited until your alibi witness passed away. Unless there is something really unusual, it does not seem to matter.
Usually yes. There is an exception when the delay in prosecution would violate the defendants rights to due process of law, which is a complicated way of saying that it would be unfair. The defense, in order to make a case that the delay violated Due Process (this takes the form of a motion called a Serna for misdemeanors or a Dogett Motion for felonies) would need to first show that they were harmed by the delay. Usually this harm takes the form of lost wittnesses like the dead alibi mentioned by another attorney above. Once the defense has shown this harm the court considers the length of the delay (which is minimal if you are still within the statute of limitations) and the justification for the delay. In cases where the statute of limitations has not run, unless there is either grievous harm or a showing of intentional harm, almost any excuse will do, including that the DA was just too busy to get to it until recently.
Yes, they can. However, there are some limitations as to the amount of time that can lapse between the alleged offense and trying the case. You should consult with an experienced criminal defense attorney to discuss this matter in a private and confidential setting. The attorney will be able to review your case with you and see if there are any motions available and advise you regarding the next step. Many attorneys, like myself, offer free initial consultations. You should talk to at least a few of them and find someone you are comfortable working with.