I can think of various ways to handle this 2-project workflow, and your solution certainly works.
I think one big way it could be improved is to avoid going through GitHub each time you make an update to the package. Since both projects are on the same machine, you could directly install and use the local copy. This would also allow you to test out the new change you made to the package without having to first commit the change to the Git repository.
As an example, imagine that your package is located at ~/projects/mypkg. To test out the latest changes you've made, you can install it for use in your project Analysis by running devtools::install("~/projects/mypkg"). And if you are making frequent updates to mypkg, it may make more sense to quickly load the package functions with devtools::load_all("~/projects/mypkg").