We consider the integer L-shaped method for two-stage stochastic integer programs. To improve the performance of the algorithm, we present and combine two strategies. First, to avoid time-consuming exact evaluations of the second-stage cost function, we propose a simple modification that alternates between linear and mixed-integer subproblems. Next, to better approximate the shape of the second-stage cost function, we present a general framework to generate optimality cuts via a cut-generating linear program that considers information from all solutions found up to any given stage of the method. To address the impact of the proposed approaches, we report computational results on two classes of stochastic integer problems.