My reading of the literature on exact logistic regression is that it has the same problems of power loss that Fisher's "exact" test has. What got you interested in exact logistic regression? A better approach may be to use penalized maximum likelihood estimation with ordinary unconditional logistic regression. ["Exact" logistic regression is a type of conditional analysis in the same sense as Fisher's test, i.e., it in some ways changes the hypotheses one tests by conditioning on certain margins.]
Your sense that you are limited by the number of cases is correct. The rule of thumb for standard multiple logistic regression is to have no more than 1 predictor variable per 15 cases of the least frequent class. In your case, that would be 30 cases, 2 predictor variables. Even though you might get an apparently good fit with more predictors, such a model would be unlikely to generalize well.
LASSO and other penalized methods like ridge regression let you use more predictors in your model than that. The regression coefficients in penalized models are lower in magnitude than they would be in a standard model for the same variables. This diminishes the "optimism" based on results from a small data set and makes the final model more likely to generalize provided that the penalty is chosen appropriately by, say, cross-validation.
Thus you are able to start with as many predictors as you wish for LASSO, ridge regression, or their hybrid elastic net. LASSO will penalize by selecting a subset of predictors and penalizing the coefficients of those selected. Ridge regression will keep all predictors with penalized coefficients.
There will be at least 2 types of limits from this approach. First, the particular variables selected by LASSO may differ substantially among data samples, even with a large data set, as you can test by repeating your modeling on multiple bootstrapped samples. Second, with so few cases your coefficients will be heavily penalized toward magnitudes of 0. Also, some care needs to be taken with categorical predictors, as discussed on this page.
Finally, coronary artery disease has been extensively studied in many large-scale data sets for many decades. Please think carefully about what you are likely to add to this body of knowledge with such a small data set.
Best Answer
If you tread dose as continuous than the estimation necessarily involves an iterative algorithm. However, if you include dose as a categorical variable, then you have a so called saturated model, whose coefficients have a closed form solution. Here is an example using Stata: