Two other factors -
1) Competition. If 2 airlines fly between A and B, the airline with the most flights gets a disproportionally higher % of the customers. Therefore, flight frequency is important, and many flights with smaller aircraft are necessary to maintain a competitive edge. With a route without competition, it is much less expensive to fly one or two large aircraft than 10 smaller ones, even on a relatively short flight.
2) Maintenance and repair. It is much cheaper to maintain a fleet if they are all the same type or if there are only a small number of different types of aircraft. Flying a widebody on a short flight may be more economical than maintaining another type of aircraft for this type of route.