Can there be situations where using (noexpand) on an indexed view is undesirable?
Firstly, NOEXPAND is an enterprise edition feature of SQL Server, that is why you have to specify it manually if you are not on this edition. 

Based on the optimizer's prediction there may be a situation, where NOEXPAND would be harmful. But it's pretty rare and most likely NOEXPAND isn't the issue in such cases. Most likely the issue is poorly chosen indexes. For instance, an index on a column with low cardinality. 

Additionally, have a look at this noexpand hint for non-enterpise edition and performance  post as it answers the rest of your questions. And also provides you with a workaround.