How to deal with individual pseudoreplication?

I am trying to deal with pseudoreplication of individuals in my study, and not quite sure how to handle it. I have been trying to account for individuals being sampled multiple times (twice usually) using a GLMM with individual ID as a random intercept. However, I think that the number of ID's that I have are throwing off the model (most individuals were only sampled once). When I check the models I create, the residuals are patterned. This pattern disappears when I remove the random intercept from the model. I am using lmer, and trying to model carbon isotopes ~ environmental variables.
Is my best option to randomly select samples for removal? I cannot average the samples as they are collected in different years. Or is there a statistically method that I can use to account for this problem?
As well, my isotopes come from within 2 subpopulation boundaries. The animals can move between subpopulations, but the environmental variables are measured in each subpopulation zone. Since I only have 2 levels, I don't think I can reasonably include this as a random intercept, correct? Would I be best creating separate models for each subpopulation? Often, these populations seem to be monitored separately. Or would it be better to just use subpopulation as a random intercept? Or to leave it in as a fixed effect?
I am just a beginner at stats, so any help would be appreciated.