Is there an algorithm to find all the shortest paths between two nodes?
For the $k$ shortest paths, there are algorithms; see for instance here. 

Enumerating all shortest paths is, however, an inherently costly thing; there may be superexponentially many such paths.