Human residential population distributions show patterns of higher density clustering around local services such as shops and places of employment, displaying characteristic length scales; Fourier transforms and spatial autocorrelation show the length scale between UK cities is around 45 km. We use integro-differential equations to model the spatio-temporal dynamics of population and service density under the assumption that they benefit from spatial proximity, captured via spatial weight kernels. The system tends towards a well-mixed homogeneous state or a spatial pattern. Linear stability analysis around the homogeneous steady state predicts a modelled length-scale consistent with that observed in the data. Moreover, we show that spatial instability occurs only for perturbations with a sufficiently long wavelength and only where there is a sufficiently strong dependence of service potential on population density. Within urban centres, competition for space may cause services and population to be out of phase with one another, occupying separate parcels of land. By introducing competition, along with a preference for population to be located near, but not too near, to high service density areas, secondary out-of-phase patterns occur within the model, at a higher density and with a shorter length scale than in phase patterning. Thus, we show that a small set of core behavioural ingredients can generate aggregations of populations and services, and pattern formation within cities, with length scales consistent with real-world data. The analysis and results are valid across a wide range of parameter values and functional forms in the model.