Okay so this is what I found:
wp-settings.php:
+requires wp-includes/default-filters.php
-contains the action hook to the function wp_cron()
+requires wp-includes/cron.php
-contains functions that perform cron related tasks, including the wp_cron() function
-above functions make http request to wp-cron.php
wp-cron.php:
-actually does the schedule checking and executes anything as needed.
My solution was to do the following:
1) In default-filters.php I commented out the following lines:
//if(!defined('DOING_CRON'))
// add_action('init', 'wp_cron');
This prevents the wp_cron function from being called on every page load, but preserves all other cron functionality in wordpress (as far as I can tell).
2) I then created a new file in the root directory of wordpress called crontab.php. Here's the basic contents (simplified for brevity):
<?php
/** Setup WordPress environment **/
require_once('./wp-load.php');
/** Call to Run wp-cron **/
if($_GET["somekey"] == "someEncrypedValue"){
wp_cron();
}
?>
I will be moving this file to a plugin directory to prevent its deletion when wordpress is upgraded, probably wp-crontrol, which i have just installed based on otto42's suggestion. Gotta love otto42!
3) Pointed crontab to my new crontab.php file. Works like a charm!
I will say that the docs for this could be a little better. I wouldn't mind putting together a step-by-step how to with a little more robust code.