There are several alternatives to using an iframe, but the behavior you're seeing is pretty concerning. It might help us find an unknown performance issue if you could grab a performance snapshot from your browser while using Kibana.
Your alternatives are:
- The Canvas app is often used for presenting data full-screen, and can cycle through pages on a timer. You can embed panels in Canvas, just like you can in Dashboard- but you can also do more styling.
- You can replicate most of the dashboard functionality using the Kibana embeddable API, which lets you embed panels for saved objects. There is a Kibana example app if you enable examples from the command line.
- Since you have a custom plugin, you can fetch data and render it using any mechanism you want- not just built-in Kibana features.