You didn't say hardware acceleration initially. If you need hardware acceleration you will have to link against Mesa/OpenGL for direct rendering anyway, which is a giant C library, so yeah the dependency on external C is somewhat unavoidable there under any windowing system.
If you consider linking against libGL and libEGL to be okay but not libwayland then there actually is a workaround: forget the EGL wayland platform and have your custom wayland implementation use the EGL GBM platform. There's some extra code you have to write here but unless something changed that I missed, the same problem exists with Xlib if you try to use the EGL X11 platform, or if you want to use direct rendering in GLX. (Mesa's libEGL/libGLX links against libX11 and expects to get a structure with the C ABI. Keep in mind if you are using GLX calls in that CLX library, you are probably not getting direct rendering, you would have to do a similar thing and reimplement the DRI2/DRI3 path from Mesa in your toolkit or application)
If you consider linking against libGL and libEGL to be okay but not libwayland then there actually is a workaround: forget the EGL wayland platform and have your custom wayland implementation use the EGL GBM platform. There's some extra code you have to write here but unless something changed that I missed, the same problem exists with Xlib if you try to use the EGL X11 platform, or if you want to use direct rendering in GLX. (Mesa's libEGL/libGLX links against libX11 and expects to get a structure with the C ABI. Keep in mind if you are using GLX calls in that CLX library, you are probably not getting direct rendering, you would have to do a similar thing and reimplement the DRI2/DRI3 path from Mesa in your toolkit or application)