If I remove intercept from the regression equation (to improve R2). Does it make my model bias?
Not at all. The only way to make the bias variance trade off is to observe the mean cross validation test scores between the various model instances.
If you ask me then I would say, it is not the way provided you use your domain knowledge. For instance, if you are predicting the dynamic fare charges of Flights then some initial amount you are bound to pay for every one ticket like Tax, service charges and all. Those could be accounted in your intercept.
Say, y = mx + c, where c is value for those fixed charges you are bound to pay for your flight.
Again, you must use your domain knowledge for tweaking the parameters.