May I quickly ask from where you are serving the content?
An VPS? WebHosting Package with a Webserver or any other kind of hosting?
Because CloudFlare natively respects your Headers and therefore it will push these files you push on your origin Server.
I for example am mostly pushing files with Apache or Nginx
If you use Apache you can just add these lines to your .htaccess
and it will automatically push the file:
Header add Link "</css/app.min.css>; rel=preload; as=style"
ofc you should replace the link with the link to the CSS file you want to push.
For the fonts you can add this (to the Header in your HTML files)
<link rel="preload" type="font/woff2" as="font" href="/fonts/FontBold.woff2" crossorigin>
(again replace path with path to your font)
Then it should get preloaded but not pushed.
Maybe this helps you to solve the problem even without Workers