Towards Efficient Federated Learning: Overcoming Challenges In Communication, Heterogeneity, And Data Scarcity