Enhancing Factual Accuracy and Citation Generation in LLMs via Multi-Stage Self-Verification