Why most sprites are like a matrix and are not horizontal?
If the sprites are ordered like the first image, you can simply have a variable to indicate the animation (0 for walking down, 1 for walking up, …) and another variable that indicates the frame and simply wraps around (0, 1, 2, 3, 0, 1, 2, …). It is also easier to identify the animations and easier for editing than the second image.
Something else? something about memory, etc …
Yes, video cards have a limit on texture size.
The lower limit is 2048x2048.