Talk to your doctor. If it's more than 6 or 7 days, it could be something like a fibroid causing it.
No reason. It is just really long.
Do you mean in one month only because of an upcoming event, or do you mean permanently? Birth-control pills would do the latter.
It is possible to force a period to come on by taking progesterone and the stopping, but I don't think that would shorten the period length unless you began taking the progesterone the first day after your last period ended. You'd have to talk to your doctor about that.
What is the reason to want to shorten your period length?