Linear Convergence in Federated Learning: Tackling Client Heterogeneity and Sparse Gradients