In general we expect SVM (or SVR in your regression task) to provide better results than MLR (I assume Multiple Linear Regression). But depending on the data and the way you run experiments it can happen due to various reasons which mostly comes down to the overfitting problem. I will point you out to 2 possible causes:
1- How do you validate the results? Do you use cross-validation? Do you use a hold-out set? Do you use a simple train-test split? If you are experimenting using a single train-test split, then the results are not that reliable. Your SVM model might overfit to that specific training set and not be able to generalize to the test set.
2- Did you tune your SVM model? There are some parameters in the SVM that you can tune such as the kernel, kernel parameter, nu, C, etc and its performance might vary (very much) according to what parameters you choose. In order to tune the parameters you need to use a hold-out set. As a general suggestion about the kernel I would say always try the linear kernel as well. For many problems it has the best generalization (if you don't need a highly nonlinear complex model just go with the simple one).