Actually, the limit of 100 recursions is a default.
From this page: https://msdn.microsoft.com/en-us/library/ms181714.aspx
It says, in part:
MAXRECURSION number (as I see that you have found) says:
Specifies the maximum number of recursions allowed for this query. number is a nonnegative integer between 0 and 32767. When 0 is specified, no limit is applied. If this option is not specified, the default limit for the server is 100.
When the specified or default number for MAXRECURSION limit is reached during query execution, the query is ended and an error is returned.
However, recursion may be more expensive than other methods.