According to news reports, if the owners of the San Francisco 49ers go through with their plan to move the team to Santa Clara, Senator Feinstein (perhaps abetted by Speaker Pelosi) will introduce legislation preventing them from using "San Francisco" as part of their name. Can Congress do that? The short answer is yes, as San Francisco itself found out when it was on the losing end of a case involving Congressional conferral of exclusive rights to use the word "Olympics." In that case (which you can find here), a San Francisco organization was prevented from calling its sports festival the "Gay Olympics" by a federal statute. The Court said that Congress was within its power to confer exclusive use of "Olympics" on the United States Olympic Committee, because "Congress reasonably could conclude that the commercial and promotional value of the word "Olympic" was the product of the USOC's 'own talents and energy, the end result of much time, effort, and expense.'"
So, can the same be said of the value of the word "San Francisco?" Probably. While the value of a city name is not wholly or even mostly the product of official efforts, they do generally come from the efforts of people who live and/or work in the city. That's probably enough to satisfy any claim that Congress lacks power to enact such legislation.
Of course, it's another question whether Congress should do such a thing. My bet is that most 49ers fans would prefer that the word "San Francisco" remain in the team name, so long as they play in the Bay Area, broadly defined. If so, the point of the legislation would be to deter a move, not to prevent the name use after a move is a fait accompli. But there's nothing constitutionally wrong with deterrent legislation.