The basemap defines the spatial reference of the map; changing the basemap and its spatial reference could cause unintended issues. Some possible alternatives are:
Destroy and recreate the map with the new basemap and load any other layers. You would want to be sure you destroy all handlers and other objects before recreating the map to avoid memory leaks.
Create a new map with the new basemap. If you want to switch back and forth, keep the old map; otherwise destroy it.
Insert the new basemap as a layer just above the basemap in the display order. The new layer would be warped to the map's spatial reference, which might slow down your map and look kinda crappy depending on the layer's contents.