As an initial guess, overfitting the test data set probably isn't your problem.
For linear models, Statistical Learning with Sparsity (SLS) notes on page 18:
Somewhat miraculously, one can show that for the lasso, with a fixed penalty parameter $\lambda$, the number of nonzero coefficients $k_{\lambda}$ is an unbiased estimate of the degrees of freedom
Your comment indicates that you had 388 nonzero coefficients for 2773 observations. That's about 7 observations per degree of freedom (df). Usual rules of thumb for linear regressions and continuous outcomes suggest that you can avoid overfitting if you have 10-20 cases per df that you use up. So there might be some overfitting, but it doesn't seem enough to explain the results you describe on test data.
To test overfitting of your LASSO fits on training data, you can use bootstrapping. SLS describes how to use that properly for LASSO in Section 6.2. Overfitting of the training set can be evaluated with the optimism bootstrap, in which you repeat the modeling process on multiple bootstrap samples and evaluate the difference in performance of each model between its bootstrap sample and the full training set.
Ridge regression, which keeps all of the predictors but penalizes their coefficients, might work much better. LASSO can work well when only a small subset of predictors are strongly associated with outcome and there aren't other predictors correlated with them. If this is brain imaging or similar data, however, I suspect that there are massive correlations among your 2112 features and that each individually only has a small association with outcome. Try ridge regression, and evaluate its internal performance on the training set as suggested above for LASSO.
I suspect, however, that your problem has more to do with omitted-variable bias; from one of your comments:
the datasets are comparable in terms of age, sex etc but not on the presence of the disease as such.
In linear regression, omitting a predictor that is both correlated with outcome and with included predictors will lead to incorrect assessment of regression coefficients. It sounds like "presence of the disease as such" has those characteristics and isn't included in your model. In that case, your results on test sets might not be so surprising.