Thanks for the question! So first, as to why (B) is correct, notice that the word “afford” is being used in two different senses. The mayor is concerned about the budget (see the first line) and so is using the word “afford” in a strictly economic sense. But when the citizen says “can we afford not to,” he’s referring to other benefits of the city hall, such as its historical meaning, and so when he says “can we afford not to,” he’s not using the word “afford” in an economic sense, he’s using it in other ways.
(A) is wrong because the argument isn’t SOLELY an emotional appeal to history; the use of the word “solely” makes (A) too strong of an option. The citizen, for example, relies on things like “maintaining respect for our city government and its authority,” which can be rational and not emotionally based.
Hope this helps! Feel free to ask any other questions that you might have.