What I've written below is mostly about trying to prove or disprove that Francis was the son of Francis, since I know a lot about Braintree specifically. Hopefully other can give advice about finding the real father of Francis if it's not Frances the older.
I've gone through the Braintree records and I'm seeing four children attributed to Francis and Mary Eliot:
Rachel born 8/26/1643
John born 2/17/1650
Hanna born 8/11/1651
Abigail born 11/12/1658
Of course those records sometimes miss children. here is the link: https://archive.org/details/recordsoftownofb00brai
The New England Historical and Genealogical Register Volume 59, has the early the records from the first church of braintree (now Quincy) printed, but I don't think they go far enough back to record Francis's baptism (looks like they start in 1672). And the second church of Braintree wasn't founded til 1697, so those records most likely won't help, (http://www.congregationallibrary.org/finding-aids/BraintreeMAFirst5302)
My advice would be to try looking through the grantor/grantee index for any land transactions for Francis Elliot. He may have given his son land before his death which might be why the son wasn't mentioned in the will.
Here is the sufolk county deeds on family search https://www.familysearch.org/search/catalog/190554?availability=Family%20History%20Library
(edited for a few correction)