Try validating TF2's cache. Do this via Steam->right-click Team Fortress 2 in the game library on the left->Properties->Local Files->Verify integrity of game cache. What this basically does is download any missing files on your side with the files TF2 currently has, and it replaces any corrupted files with fresh, working ones. Custom content stays where it is.