Wenn die Forderung nur "immer außerhalb" ist:
ist, kannst Du in Deinem Beispiel die Option `auto=right` verwenden. Sie sorgt dafür, dass Nodes automatisch rechts vom Pfad positioniert werden, für die kein Anker und keine Positionierungsoption angegeben wurde. Im Beispiel bedeutet das, dass die Nodes alle außerhalb des Polygons sind. Wichtig ist außerdem, dass die Nodes relativ zum Pfad positioniert werden. Bei den Nodes in Eckpunkten muss deshalb unbedingt `at end` oder `pos=1` angegeben werden.
Andere Werte für `auto` wären `left` (links vom Pfad) und `false` (Aufheben der automatischen Positionierung).
\documentclass[border=5mm, tikz]{standalone}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}[
point/.style={circle, radius=2pt, fill=black, inner sep=2pt},
]
%\def\Ecken{14}
\pgfmathtruncatemacro{\Ecken}{8}
\node (pol) [
draw,
minimum size=0.9\textwidth,
regular polygon, regular polygon sides=\Ecken,
rotate=360/(2*\Ecken),
]{};
\foreach[remember=\n as \i(initially \Ecken)] \n in {1,...,\Ecken}
\path[auto,swap]
\path[auto=right]% Nodes automatisch rechts vom Pfad positionieren
(pol.corner \i)--(pol.corner \n)
node[midway,red]{\i}
node[at end,draw]{\n}
end,draw]{\n}% at end oder pos=1 angeben, damit noch auf dem Pfad
node[point]{}
;
\end{tikzpicture}
\end{document}
[![alt text][1]][1]
[1]: https://texwelt.de/wissen/upfiles/tw_polygonbeschriftung.png