to the first question: yes.
to the second question: it depends. i am about as disorganized when it comes to this as i am with anything else. sometimes i look into my desk drawer and discover a gift i bought for a friend several years ago and forgot about, which has been lying there and gathering dust. so i take it and hand it over. or i can fail to send a package for weeks or months (for a variety of reasons - not having enough money, not finding the time to go to the post office, forgetfulness etc.) so people eventually receive their birthday or christmas gifts when the next birthday/christmas season is already approaching.
poor organizational skills aside, it is not the time that seems to matter most - it is what i give and how much thought has been put into selecting it. granted, if i know that the person is more punctual about this, i try to find a suitable gift as soon as i can, or, if this is impossible, i tell them outright that i need more time to get what they requested/what i feel is right for them - all my friends are fine with that.
to the third question: i suppose i can, but on a deeper level i don't think this is about "owing" anyone anything, or about any mechanical exchange of objects. if a person has given me a present, it means they wanted to make me happier; perhaps their guess was not entirely correct and i didn't exactly like the gift, but at least they have tried, and it is the intention that matters most. so i want to make them happier in turn. it feels right to do do. gift-giving is one of the most essential ways i express affection, too, so that whole sequence can become very significant.