Anywhere I've looked, the definition of solution of equation is root(s) of that equation. But why does a textbook say that equation $y=7-3x$ has infinite number of solutions?
Equations have solutions, but not roots. Polynomials have roots, but not solutions.
Solutions are not the same as roots.
A root is a value of $x$ where $y = 0$ and your equation is satisfied. In your equation, the root is $x = 7/3$.
A solution in general is a pair of values $(x,y)$ that satisfy the equation. Examples of solutions to your equation include, but are not limited to, $(7,-14)$, $(0,7)$, and $(\frac 73, 0)$. There are an infinite number of such pairs.
Roots are a special type of solution. But not all solutions are roots.
This is because a root is just setting the y value equal to 0 and solving for x, whereas the equation itself is just saying "how many points are there such that y = 7 - 3x", not "how many points are there such that the y value is 0". For example, (2, 1) would be a solution to this equation, but not a root.
Hope this helps!