Here are my reasons why I still recommend using some JS/AJAX:
2) There is no requirement to validate the code on the JS side. You can reload a subset HTML page with AJAX with only your request and replace that HTML in your form with the errors generated from your controller.
Here is an example for loading HTML from AJAX combined with gizmos:
To answer your next question:
A) If you load in points before the page loads (i.e. from the controller/template) you just pass the info to the template from the controller
B) If you need to load points in from input from the user or other information after the page loads, I don't think you are going to be able to eliminate a JS script for your page for the custom stuff you will need to do. The data for the map view gizmo is stored using openlayers.js, so I don't think you can get to it without using some JS and dumping it into your HTML (
https://api.jquery.com/data).