Why is memory one dimensional?
You're asking multiple questions.

Why are instruction set architectures designed to use a one-dimensional address space for memory?  Memory isn't actually one-dimensional, but providing a one-dimensional abstraction is very convenient.  It makes programmer's lives simpler, it makes the CPU architecture easier to specify in a comprehensible way, and it provides a single flexible abstraction that isn't tied to a particular technology of the moment or a particular device or platform.

It's not the CPU's abstraction for memory that forces you to choose between row-major vs column-major storage, and cause the opposite way of accessing a matrix to be slower; it's the way DRAM works that forces this decision.

Why don't RAM chips provide both a row-burst and column-burst? Our current DRAM technology is highly optimized for cost, density, and power.  Supporting additional features like that would be more expensive and more complex.  It's likely that the potential performance gains you're hoping for are not worth the additional expense, and would be modest for most
applications, hence not worth it.