I've made a nice roadmap and am trying to add a basemap, but the World Topo Map has town names, so does the USA Topo map and the Nat Geo Topo map. how do I get rid of these?
Are you referring to getting rid of the labels in Basemaps added to ArcMap that don't have separate reference layer labels?
If so, you can just add the map service layer directly to your map instead of importing the base map from the Add Data button.
So for example, to add the World Street Base map to ArcMap without the labels, go to Add ArcGIS Server, select use GIS services, and add this link: http://services.arcgisonline.com/arcgis/rest/services/World_Terrain_Base/MapServer. Then add the World Terrain Base to your map (It looks similar to the World Street Base map, just without the labels).
Check out the other basemaps here to see if you can find a version without labels to add for the basemap you want: http://services.arcgisonline.com/ArcGIS/rest/services/
No, it is not possible to remove or modify basemap labels as they are part of the imagery. However, it is possible to use a basemap with less labels or customize a vector basemap to meet the desired specification.
GO through with the link, FAQ: Is it possible to remove basemap labels in ArcGIS Online?
It is quite easy, in fact. This person shared this and it works fine for my needs.