My question may seem very simple and easy to answer, however I still believe it to be a good question to think about. For this instance, we will convert between base 2 and base 3. If I were to represent the number 255 within base 2, I would utilize 8 digits, 11111111 (255), and I would have no possible digits higher than this without increasing the length of the string, which I'm compelled to refer to as the magnitude of the number. Because base 3 is more space-efficient due to having more numbers represented before reaching the number 10 (3), we can minimize the magnitude of the string needed to represent the decimal number 255 which in what I believe to be the naive method of having a magnitude of 6, to represent the number 255 as 100110.
We can now represent this as a formula. The simplest way is to convert it directly between one another. A binary string of the length 8 (magnitude 8) can contain 256 possible unique values. The closest approximation in base 3 (ternary) is a string of the length 5 (magnitude 5) which can only contain 243 possible unique values. The smallest integer magnitude, as referred to earlier, is magnitude 6. We can know the amount of possible values by the simple formula b^n with b representing the base system used. $2^8$ is indeed 256, but $3^6$ is 729, which means using any integer magnitude will have an excess (amount of numbers higher than the desired number) of 473. However, if we no longer constrain ourselves to integer solutions, $3^{log_3(2)n}$ is a formula which simplifies into $2^n$. It has an exact solution in magnitude that would be equal to 256.
$256=(3)^{log_3(2)n}$
$256=2^n$
$log_2(256)=n$
$n=8$
$3^{log_3(2)8}$
$3^{log_3(256)}$
~5.047 is the solution
If it were to be possible to increase the magnitude of a string of numbers fractionally, then you could have a theoretically perfect representation of any number within a single base 3 string or any other arbitrary base. Its perfection is not in precision as magnitude 6 base 3 string also has a perfectly precise representation, but it is perfect in terms of space efficiency. This does not necessarily mean a useful or convenient representation.
Is it possible in any numerical system or system of counting to have what amounts to a fractional magnitude?
It is useful to think of base conversion in terms of polynomials.
For e.g., $f(x) = a_{n-1} x^{n-1} + a_{n-2} x^{n-2} + \cdots + a_1 x + a_0$.
The coefficients are the digits in base-$b$ and $N = f(b)$.
Base conversion is then equivalent to a transformation of $x$ using a rational function, i.e., $x \rightarrow \frac{h(x)}{g(x)}$. If we take $g(x) = 1$, the constant function, we get the base conversion we read in the elementary text book introduction. For e.g. $3935_{10} = 3\cdot10^3 + 9\cdot10^2 + 3\cdot 10 + 5$. In our polynomial notation, the equivalent polynomial is $f(x) = 3\cdot x^3 + 9\cdot x^2 + 3\cdot x + 5$. Suppose, we want to convert to base $16$, we write $16 = \alpha 10 + \beta$ and then we can put $y = \alpha 10 + \beta$ with $\alpha = 1, \beta = 6$. The polynomial that we get has coefficients in base $y$. Evaluating it at $y$ will give us $N = 3935_{10} = F5F_{16}$.
For determining a sparse interpolating polynomial that is efficient in representation, one may use techniques from Interpolation of shifted-lacunary polynomials (See: https://arxiv.org/pdf/0810.5685.pdf for details).
So, the answer to your question is: Yes, a fractional (or optimal) base is possible.
Think of it this way. There are an infinite number of polynomials that pass through a point $(x,y)$. Given $y=f(x)$ we want to find $Y = g(X)$ such that $f(a) = g(b) = N$ and $g$ has a sparse representation. $a \rightarrow b$ is the base conversion.