$0^0=1,$ so I would not say it is undefined. More on this later.
Why is $\frac{x}0$ undefined? What does it mean for it to be undefined? To understand the answer to this question, we will need to delve a bit into group theory. I will do my best to explain the basics of what a group is.
Firstly, we start with a mathematical structure $(\mathbf{M},\star)$ called a magma. Here, $\mathbf{M}$ is any set, and $\star$ is a binary operation, which takes a pair $(m_0,m_1)$ as the input, where $m_0,m_1\in\mathbf{M},$ and returns some $n\in\mathbf{M}$ as the output. Using the notation that we use for functions, we would write $\star(m_0,m_1)=n.$ However, in the context of arithmetic and algebra, there is a notation for this that is more common: $m_0\star{m_1}=n.$ Examples of binary operations are addition $(+),$ multiplication $(\cdot),$ function composition $(\circ),$ convolution $(\ast),$ and there are many others.
Some magmas have something called an identity element. An identity element $e\in\mathbf{M}$ of a magma $(\mathbf{M},\star)$ is a constant such that $e\star{m}=m\star{e}=m$ for all $m\in\mathbf{M}.$ In the context of addition $(+),$ such an identity element is typically denoted as $0,$ and in the context of multiplication $(\cdot),$ it is denoted as $1.$
Now, you are ready to understand what a group is. A magma $(\mathbf{M},\star)$ is called a group when it satisfies the following axioms:
- There exists some $e\in\mathbf{M}$ such that for all $m\in\mathbf{M},$ $e\star{m}=m\star{e}=m$ (Axiom of identity element).
- For all $m\in\mathbf{M},$ there exists some $n=m^{-1}\in\mathbf{M}$ such that $m\star{m^{-1}}=m^{-1}\star{m}=e$ (Axiom of invertibility) ($m^{-1}$ is called the $\star$-inverse of $m$).
- For all $m,n,p\in\mathbf{M},$ $(m\star{n})\star{p}=m\star(n\star{p})$ (Axiom of associativity).
Groups are an extremely important type of abstract mathematical structure with all sorts of applications everywhere. Why are they important for your question? Because underlying all of arithmetic and algebra is the theory of magmas, groups, and other structures that are similar. To give you a sense of familiarity, I want to give you some examples of groups you work with regularly.
- The structure $(\mathbb{Z},+)$ forms a group with identity element $0.$ Here, $\mathbb{Z}$ are the integers. So the integers form a group with respect to addition.
- The structure $(\mathbb{Q}\setminus\{0\},\cdot)$ forms a group with identity element $1.$ Remember that $\mathbb{Q}\setminus\{0\}$ are the nonzero rational numbers. They form a group with respect to multiplication.
- The set of polynomials of degree up to $n$ form a group with respect to $+.$
- The set of functions of real numbers with real variables forma group with respect to $+.$
This is all good, but in most applications, you actually have two binary operations, $+$ and $\cdot,$ instead of only one. So in actuality, you have two magmas: $(\mathbf{M},+)$ and $(\mathbf{M},\cdot).$ Also, in most applications, the set $\mathbf{M}$ is a set of numbers, or a set of functions. In elementary arithemtic, you usually have $\mathbf{M}$ be the set of integers $(\mathbb{Z}),$ the set of rational numbers or fractions $(\mathbb{Q}),$ the set of real numbers $(\mathbb{R}),$ or the set of complex numbers $(\mathbb{C}).$ What all of these elementary structures have in common is that they have two binary operations: $+$ and $\cdot.$ Also, they all share an additional axiom that connects the two operations together:
- For all $m,n,p\in\mathbf{M},$ $p\cdot(m+n)=(p\cdot{m})+(p\cdot{n})$ and $(m+n)\cdot{p}=(m\cdot{p})+(n\cdot{p})$ (Axiom of distributivity).
This axiom is what allows you to say things such as $2\cdot2=2\cdot(1+1)=2\cdot1+2\cdot1=2+2=4.$ With this, we are now prepared to get a deeper understanding of what it means to "divide" two numbers, and how that results in division by $0$ not being possible. Notice, for example, that the fractions $\mathbb{Q}$ have a $+$-identity we call $0,$ and a $\cdot$-identity we call $1,$ and $1$ has a $+$-inverse we call $-1.$ In other words, $(\mathbb{Q},+)$ forms a group with identity element $0,$ and $(\mathbb{Q},1)$ forms a magma with identity element $1,$ and the two magmas are linked together by the axiom of distributivity. This linkage of the two binary operations is what allows us to do basic arithmetic, and other forms of mathematics. However, this linkage also makes it impossible for $(\mathbb{Q},\cdot)$ to be a group, because $0$ has no $\cdot$-inverse. With the group axioms of $(Q,+)$ and the axiom of distributivity, and no other assumptions, it can be proven that $0$ is an absorbing element of $(\mathbb{Q},\cdot),$ so unless you allow $0=1,$ you can never have some $m\in\mathbb{Q}$ such that $0\cdot{m}=m\cdot0=1.$ To put it more formally:
Theorem: if $(\mathbb{Q},+)$ is a group with identity element $0$ and $(\mathbb{Q},\cdot)$ is a magma with identity element $1,$ and the two magmas are linked by the axiom of distributivity, then $0\cdot{m}=m\cdot0=0.$
Proof: since $0$ is the additive identity, it follows that $0=0+0.$ Therefore, $0\cdot{m}=(0+0)\cdot{m}.$ By the axiom of distributivity, $(0+0)\cdot{m}=0\cdot{m}+0\cdot{m},$ hence $0\cdot{m}=(0\cdot{m})+(0\cdot{m}).$ Now, remember that $(\mathbb{Q},+)$ is a group, and thus, satisfies the axiom of invertibility, which implies $0\cdot{m}+n=0$ for some $n\in\mathbb{Q}.$ Therefore, $(0\cdot{m})+n=[(0\cdot{m})+(0\cdot{m})]+n.$ By the axiom of distributivity, $[(0\cdot{m})+(0\cdot{m})]+n=(0\cdot{m})+[(0\cdot{m})+n]=(0\cdot{m})+0=0\cdot{m},$ so $(0\cdot{m})+n=0\cdot{m},$ but $(0\cdot{m})+n=0,$ so $0=0\cdot{m}.$ The prof for $0=m\cdot0$ is completely analogous, and is left as an exercise to the reader.
Since $0\cdot{m}=m\cdot0=0$ for every $m\in\mathbb{Q},$ we can immediately conclude that $0$ has no multiplicative inverse, no $\cdot$-inverse. We do not need to know anything else about $(\mathbb{Q},\cdot)$ to know this. Why does this matter, though? Why do we care about $0$ having no multiplicative inverse? Well, because the "operation" we call "division" is actually a form of multiplication: it is a shorthand for writing multiplication by the inverse. Explicitly, $\frac{x}{y}:=x\cdot{y^{-1}},$ where $y^{-1}\cdot{y}=y\cdot{y^{-1}}=1.$ Therefore, whenever you write the expression $\frac{x}0,$ you are actually writing a shorthand for $x\cdot0^{-1},$ where $0^{-1}$ denotes the multiplicative inverse of $0:$ the quantity $y$ such that $0\cdot{y}=y\cdot0=1.$ But we just established no such a quantity exists, and such a quantity can never exist, because of the above theorem. Even if we extended the rational numbers to a new class of numbers, say $\mathbb{S},$ if we want to keep $(\mathbb{S},+)$ as a group, and if we want to keep the axiom of distributivity, then $0\cdot{m}=m\cdot0=0$ will remain true in this new structure. So applying the approach of extending to new structures does not work, because of the theorem. As such, the expression $\frac{x}0$ is just meaningless. It is not allowed in our mathematical vocabulary, it is the equivalent of gibberish.
Now onto talking about $0^0.$ Here, it is important to first establish what the symbol $x^n$ is intended to mean. For a second, let us assume that $x\in\mathbf{X},$ where $(\mathbf{X},\cdot)$ is a magma satisfying the axiom of identity element and the axiom of associativity. Then the expression $x\cdot{x}$ is well-defined. Also, $x\cdot(x\cdot{x})=(x\cdot{x})\cdot{x},$ so when we use the notation as a shorthand $x\cdot{x}\cdot{x},$ there is no danger of the expression being ambiguous. In other words, associativity gives us that $x\cdot{x}\cdot{x}$ is well-defined, and the same goes for expressions such as $x\cdot{x}\cdot{x}\cdot{x}$ and $x\cdot{x}\cdot{x}\cdot{x}\cdot{x},$ and so on.
Notice how the above products can get very tedious to write down as the number of multiplications applied increases. So mathematicians devised a notation that would allow us to abbreviate such expressions. The notation that they ultimately settled on is $x^n.$ So we can say $x\cdot{x}=x^2,$ and $x\cdot{x}\cdot{x}=x^3,$ and $x\cdot{x}\cdot{x}\cdot{x}=x^4,$ and $x\cdot{x}\cdot{x}\cdot{x}\cdot{x}=x^5,$ and so on. This is very much a non-rigorous definition, but if $n\geq2,$ then $x^n$ denotes an expression $x\cdot{x}\cdots{x}$ where there are $n$ occurrences of $x$ in the expression.
One issue you already have encountered at this point, is that the notation does not accommodate for $n=1$ or $n=0,$ which is inconvenient, since in mathematics, it is extremely common to index things with the set $\mathbb{N}=\{0,1,2,3,..\}.$ So we would like for the notation $x^1$ and $x^0$ to also be meaningful. But the problem is that multiplication $(\cdot)$ is a binary operation: it takes pairs of inputs. There is no meaningful sense in which I can talk about $\cdot$ taking a single real number $x$ as an input, for example. So it is evident that if we want $x^1$ and $x^0$ to be meaningful expressions, then we need to change our definition of $x^n.$
Notice, though, that the axiom of associativity has been assumed to hold in this case. So we the expression $x\cdot{y}\cdot{z}$ is not ambiguous: it does not matter whether we interpret it as $(x\cdot{y})\cdot{z}$ or as $x\cdot(y\cdot{z}),$ since $(x\cdot{y})\cdot{z}=x\cdot(y\cdot{z}).$ So here is what we can do: to make things rigorous, we can define a function $\bullet_3$ such that $\bullet_3(x,y,z)=x\cdot(y\cdot{z})=(x\cdot{y})\cdot{z}.$ Similarly, you can define $\bullet_4(w,x,y,z)=w\cdot(x\cdot(y\cdot{z})),$ and so on. Actually, while we are at it, why not define $\bullet_2(x,y)=x\cdot{y}$? With this, we now have that $$\bullet_m(x_0,x_1,...,x_{m-1})\cdot\bullet_n(x_m,x_{m+1},...,x_{m+n-1})$$ $$=\bullet_{m+n}(x_0,x_1,...,x_{m-1},x_m,x_{m+1},...,x_{m+n-1})$$ for $m,n\geq2.$ This encodes the fact that $(x_0\cdot{x_1}\cdots{x_{m-1}})\cdot(x_m\cdot{x_{m+1}}\cdots{x_{m+n-1}})=x_0\cdot{x_1}\cdots{x_{m+n-1}}$ formally, but the advantage of this is that $\bullet_n$ is systematically defined as a function whose input is an $n$-tuple, an ordered collection of $n$ objects. So if we can get around to defining $\bullet_1$ and $\bullet_0,$ functions with a single input, and no input, respectively, then we may be able to define $x^1$ and $x^0.$ To do this, we simply need to use the recursion given to us above. It amounts to having $$\bullet_n(x_0,x_1,...,x_{n-1})\cdot\bullet_1(x_n)=\bullet_{n+1}(x_0,x_1,...,x_{n-1},x_n)$$ and $$\bullet_n(x_0,x_1,...,x_{n-1})\cdot\bullet_0()=\bullet_n(x_0,x_1,...,x_{n-1})$$ for all $x_0,x_1,...,x_n\in\mathbf{X}.$ From here, it is straightforward to see that $\bullet_1(x)=x$ and $\bullet_0()=1.$ This allows us for a rather direct definition of $x^n.$ We say $$x^n:=\bullet_n(x,x,...,x).$$ Now, it is easy to see that $x^1=\bullet_1(x)=x,$ and this is true for every $x\in\mathbf{X}.$ Similarly, $x^0=\bullet_0()=1$ is true for every $x\in\mathbf{X},$ So if $0\in\mathbf{X},$ then it follows that $0^0=1.$
So with all of that being said, why is it taught by many teachers and why is it said by so many sources on the Internet that $0^0$ is undefined? The reason has to do with a misunderstanding of a concept in calculus. For this, we must talk about limits. Unfortunately, explaining in detail what a limit is would make my answer unacceptably long, probably twice as a long as it already is. So the rest of my answer is going to proceed with the assumption that you know what a limit is and how it works. If you have not been sufficiently exposed to the topic of limits, then I would suggest that you first try to get educated on that subject separately, and then you come back to the question of why people say $0^0$ is undefined later, at an appropriate level of understanding.
Firstly, it should be noted that in the context of calculus, the notation $a^b$ is used ambiguously and inconsistently. I spent several paragrphs telling you that $a^b=\bullet_b(a,a,...,a)$ for $a\in\mathbb{N}.$ But the notation $a^b$ in calculus is also used to abbreviate the expression $\exp[\ln(a)\cdot{b}],$ where the function $\exp$ is defined as satisfying a certain equation. Unfortunately, it is also common to write $\exp(x)$ as $e^x,$ hence the origin of the inconsistency and ambiguity with the notation.
With this usage of the notation, $0^0$ is indeed undefined, since $\ln(0)$ is undefined. But since we are talking calculus here, there is some hope that one can use limits to define $0^0.$ So we consider two sequences $a_n$ and $b_n,$ such that they both have $0$ as their limit, and then we consider the sequence $c_n=a_n^{b_n}=\exp[\ln(a_n)\cdot{b_n}],$ and look at whether it converges. It turns out that it can be proven that every positive real number is a possible limit for $c_n$ in this case. Therefore, it is not necessarily the case that $c_n=a_n^{b_n}$ will converge to $1$ if $a_n,b_n$ converge to $0.$ To put it succinctly, $$\lim{a_n}^{b_n}\neq[\lim{a_n}]^{[\lim{b_n}]}.$$ The reason this happens is because $$\lim\ln(a_n)\cdot{b_n}\neq[\lim\ln(a_n)]\cdot[\lim{b_n}],$$ since $a_n\to0$ means $d_n=\ln(a_n)$ diverges, and so $\lim{d_n}$ does not actually exist. This fact is often spelled out by teachers in classroom or on the Internet by the words "$0^0$ is an indeterminate form."
The argument there is that continuity therefore cannot be used to define $0^0,$ so it is undefined. However, there are immediately problems with this line of reasoning. For one, the definition $a^b:=\exp[\ln(a)\cdot{b}]$ is generally problematic, and it leads not only to $0^0$ being undefined, but it also leads to things such as $(-1)^2$ being undefined, since $\ln(-1)$ is also undefined, and using complex numbers would not be helpful since the complex logarithm is not well-defined. In fact, the above definition necessitates that $a\gt0$ be satisfied. For two, the above line of reasoning with two sequences is not the correct way to try to exploit limits to define $0^0.$ The reason there are any problems with $0^0$ under this definition at all is because $\ln(0)$ is undefined. So the simplest solution is to have $$a^b=\lim_{x\to{a}}\exp[\ln(x)\cdot{b}].$$ This immediately solves the problem: $0^0=1$ under this definition, and $0^x=0$ for all $x\gt0.$ Sadly, this does not solve the problem for $(-1)^2$ as mentioned above, but this is irrelevant.
Many people object to the above by saying that $x\mapsto0^x$ would be discontinuous at $0$ with the above, so $0^0$ would still be undefined by the above definition. But this argument relies on misunderstanding what continuity is. A function can be defined at a point and not be continuous at that point. In fact, by definition, a function can only be continuous or discontinuous at a point if said point is in its domain.
Finally, I should note that while most people on the Internet will die on the hill that $0^0$ is undefined, when you look at the mathematical literature (by this, I mean, the collection of written works published at reliable scholarly journals of mathematical research), you will encounter $0^0=1$ treated as a fact far more often than you will encounter $0^0$ being left as undefined. It really is not that important of an issue, though, as it ultimately boils down to a problem with inconsistent usage of notation, rather than to any particular mathematical theorem. Take that as you will.
I will not address the other questions you had regarding fractional exponents, since you can already find plenty of in-depth answers in MSE for those, and in my opinion, exponent notation should be reserved for integer exponents anyway. My answer would become unreadably long otherwise (if it is not already).