Afer a lot of trial and error, and help from this thread, I found this to work for me to change both the dataset (feature class) name and the workspace connection:
First, replace the dataset name with the new one and use False for the schema testing parameter. In most cases this will break the layer data connection, but this is only temporary.
lyr.updateConnectionProperties(lyr.connectionProperties,{'dataset':<datasetNameInDestinationWorkspace>},False,False)
The second step is to repoint to the new workspace. This time use the default value (True) for the schema testing parameter. The application will read the feature class properties, apply them to the layer, and consequently fixe the broken data source connection.
lyr.updateConnectionProperties(<currentWorkspacePath>,<newWorkspacePath>)
The workspace paths can point to file geodatabases or .sde connection files.