You just described, almost without discrepancy, X.25.
That does not necessarily mean anything or diminish the value of what you're suggesting; it is simply worth noting that this has been done before (and fell by the wayside decades ago).
I doubt X.25 abstracts away L4 and L7! You still need port numbers so you still need HTTP for everything, application unpacking at the load balancer, a service mesh, etc. X.25 seems to end at the network layer.
That does not necessarily mean anything or diminish the value of what you're suggesting; it is simply worth noting that this has been done before (and fell by the wayside decades ago).