Better way to manually load a view of nodes other than with "views_get_view_result" > "node_load"?
Since you need to load all of the nodes on your front page, Not that much difference does it make how you implement it, whether using code or loading View in a page or block or ....

views_embed_view do the same thing and loads a View but it doesn't reduce the load size!

I recommend you to to use Ajax. The Views Load More module is exatcly what you need. This module


Provide ajax/no-ajax views load more
Works with views default ajax implementation, no hacks (check/uncheck ajax)
Supports the Waypoints module for loading on various points, Such as when the scroller is visable on the page.
Supports the Fade effect when loading new content.


Instead of loading all of your content, simply just load 100 or 200 of them then use Ajax to load more.

Views Show More module is another solution. This module


Works both views ajax and no-ajax mode (developed mainly for the ajax mode).
Option for result display method. Can choose Append or Replace method.
Option to override 1st page or initial item count than others page.
Basic and advance animation system for result impression for ajax mode.
Ability to define custom animation timing.
Advance settings for content area and pager area selector. If default html


In the aggregate, create a View of all of the content types that their nodes must be included in the front page, include that view in the front page and use one of the above modules to use load more.