Classifying one particular class of documents from the rest
Your problem is indeed a typical one-class classification problem, and as far as I know one-class SVM is usually a good option for that. 

I think you should investigate what causes the poor performance:


Evaluating with accuracy is probably not informative enough, you would need to find out at least whether the errors tend to be mostly false positive or false negatives, thus using precision/recall.
You could look at what is happening at the level of features: I would expect some words specific to sports to be assigned a strong weight by SVM for instance. It could also be a problem with the dimensionality being too high, maybe you need to remove stop words or filter out rare words, etc.