Constraint-Coupled Distributed Optimization: A Relaxation and Duality Approach